jQuery03

来源:https://www.cnblogs.com/limuma/archive/2018/02/21/8457743.html
-Advertisement-
Play Games

使用jQuery實現表單校驗:(單獨拿出來介紹表單校驗,是因為內容比較多,知識點較多); 1、註:這裡使用validation插件完成對錶單數據的校驗; validate:一款優秀的表單驗證插件——validation插件 (1)特點: 內置驗證規則:擁有必填、數字、email、url和信用卡號碼等 ...


使用jQuery實現表單校驗:(單獨拿出來介紹表單校驗,是因為內容比較多,知識點較多);

  1、註:這裡使用validation插件完成對錶單數據的校驗;

    validate:一款優秀的表單驗證插件——validation插件

  (1)特點:

         內置驗證規則:擁有必填、數字、email、url和信用卡號碼等19類內置驗證規則;

         自定義驗證規則:可以很方便的自定義驗證規則;

         簡單強大的驗證信息提示:預設了驗證信息提示,並提供自定義覆蓋預設提示信息的功能;

         實時驗證:可以通過keyup或bulr事件觸發驗證,而不僅僅在表單提交的時候驗證。

  (2)既然是一個插件,使用之前就需要先導入文件validate庫,當然同時也需要導入jQuery庫,另外,也可導入支持中文的國際化資源庫,如下:

    

    註:前兩個庫的導入順序不能改變(先導jQuery,再導validate),jQuery版本可更改為1.8.3版本的

  2、介紹一下validate校驗規則,看下圖:

    

  根據此規則,我們先來寫一段簡單的入門校驗代碼:

  
 1 <!DOCTYPE html>
 2 <html>
 3     <head>
 4         <meta charset="UTF-8">
 5         <title>validate入門案例</title>
 6         <script type="text/javascript" src="../../js/jquery-1.8.3.js" ></script>
 7         <!--validate.js是建立在jquery之上的,所以得先導入jquery的類庫-->
 8         <script type="text/javascript" src="../../js/jquery.validate.min.js" ></script>
 9         <!--引入國際化js文件-->
10         <script type="text/javascript" src="../../js/messages_zh.js" ></script>
11         <script>
12             $(function(){
13                 $("#checkForm").validate({
14                     rules:{
15                         username:{
16                             required:true,
17                             minlength:6
18                         },
19                         password:{
20                             required:true,
21                             digits:true,
22                             minlength:6
23                         }
24                     },
25                     messages:{
26                         username:{
27                             required:"用戶名不能為空!",
28                             minlength:"用戶名不得少於6位!"
29                         },
30                         password:{
31                             required:"密碼不能為空!",
32                             digits:"密碼必須是整數!",
33                             minlength:"密碼不得少於6位!"
34                         }
35                     }
36                 });
37             });
38         </script>
39         
40     </head>
41     <body>
42         <form action="#" id="checkForm">
43             用戶名:<input type="text" name="username" /><br />
44             密碼:<input type="password" name="password"/><br />
45             <input type="submit"/>
46         </form>
47     </body>
48 </html>
validate入門代碼

  註:點開代碼,裡邊的messages{}是用來自定義提示語的,當然你如果不寫messages{},他會提示validate自帶的提示語;

  接下來是用validate進行表單校驗的代碼(jQuery代碼部分):

<script type="text/javascript" src="../../js/jquery-1.11.0.min.js" ></script>
<script type="text/javascript" src="../../js/jquery.validate.min.js" ></script>
<script type="text/javascript" src="../../js/messages_zh.js" ></script>
<script>
    $(function(){
        $("#registForm").validate({
            rules:{
                user:{
                    required:true,
                    minlength:2
                },
                password:{
                    required:true,
                    digits:true,
                    minlength:6
                },
                repassword:{
                    required:true,
                    digits:true,
                    minlength:6,
                    equalTo:"[name='password']"
                },
                email:{
                    required:true,
                    email:true
                },
                username:{
                    required:true,
                    minlength:2
                },
                sex:{
                    required:true
                }
            },
            messages:{
                user:{
                    required:"用戶名不能為空!",
                    minlength:"用戶名不得少於2個字元!"
                },
                password:{
                    required:"密碼不能為空!",
                    digits:"密碼必須是數字!",
                    minlength:"密碼長度不得低於6位!"
                },
                repassword:{
                    required:"確認密碼不能為空!",
                    digits:"密碼必須是數字!",
                    minlength:"密碼長度不得低於6位!",
                    equalTo:"兩次密碼不一致!"
                },
                email:{
                    required:"郵箱不能為空!",
                    email:"郵箱格式不正確!"
                },
                username:{
                    required:"姓名不能為空!",
                    minlength:"姓名不得少於2個字元!"
                },
                sex:{
                    required:"性別必須勾選!"
                }
            },
            errorElement: "label", //用來創建錯誤提示信息標簽
            success: function(label) { //驗證成功後的執行的回調函數
                //label指向上面那個錯誤提示信息標簽label
                label.text(" ") //清空錯誤提示消息
                    .addClass("success"); //加上自定義的success類
            }
        });
    })
</script>

完整代碼:

  1 <!DOCTYPE html>
  2 <html>
  3     <head>
  4         <meta charset="UTF-8">
  5         <title>網站註冊頁面</title>
  6         <style>
  7             #contanier{
  8                 border: 0px solid white;
  9                 width: 1300px;
 10                 margin: auto;
 11             }
 12             
 13             #top{
 14                 border: 0px solid white;
 15                 width: 100%;
 16                 height: 50px;
 17             }
 18             #menu{
 19                 border: 0px solid white;
 20                 height: 40px;
 21                 background-color: black;
 22                 padding-top: 10px;
 23                 margin-bottom: 15px;
 24                 margin-top: 10px;
 25             }
 26             .top{
 27                 border: 0px solid white;
 28                 width: 405px;
 29                 height: 100%;
 30                 float: left;
 31                 padding-left: 25px;
 32             }
 33             #top1{
 34                 padding-top: 15px;
 35             }
 36             #bottom{
 37                 margin-top: 13px;
 38                 text-align: center;
 39             }
 40             
 41             #form{
 42                 height: 500px;
 43                 padding-top: 70px;
 44                 background-image: url(../img/regist_bg.jpg);
 45                 margin-bottom: 10px;
 46             }
 47             a{
 48                 text-decoration: none;
 49             }
 50             
 51             label.error{
 52                 background:url(../img/unchecked.gif) no-repeat 10px 3px;
 53                 padding-left: 30px;
 54                 font-family:georgia;
 55                 font-size: 15px;
 56                 font-style: normal;
 57                 color: red;
 58             }
 59             
 60             label.success{
 61                 background:url(../img/checked.gif) no-repeat 10px 3px;
 62                 padding-left: 30px;
 63             }
 64             
 65             #father{
 66                 border: 0px solid white;
 67                 padding-left: 307px;
 68             }
 69             
 70             #form2{
 71                 border: 5px solid gray;
 72                 width: 660px;
 73                 height: 450px;
 74             }
 75             
 76         </style>
 77         <script type="text/javascript" src="../js/jquery-1.8.3.js" ></script>
 78         <!--引入validate插件js文件-->
 79         <script type="text/javascript" src="../js/jquery.validate.min.js" ></script>
 80         <!--引入國際化js文件-->
 81         <script type="text/javascript" src="../js/messages_zh.js" ></script>
 82         <script>
 83             $(function(){
 84                 $("#registForm").validate({
 85                     rules:{
 86                         user:{
 87                             required:true,
 88                             minlength:3
 89                         },
 90                         password:{
 91                             required:true,
 92                             digits:true,
 93                             minlength:6
 94                         },
 95                         repassword:{
 96                             required:true,
 97                             equalTo:"[name='password']"
 98                         },
 99                         email:{
100                             required:true,
101                             email:true
102                         },
103                         username:{
104                             required:true,
105                             maxlength:5
106                         },
107                         sex:{
108                             required:true
109                         }
110                     },
111                     messages:{
112                         user:{
113                             required:"用戶名不能為空!",
114                             minlength:"用戶名不得少於3位!"
115                         },
116                         password:{
117                             required:"密碼不能為空!",
118                             digits:"密碼必須是整數!",
119                             minlength:"密碼不得少於6位!"
120                         },
121                         repassword:{
122                             required:"確認密碼不能為空!",
123                             equalTo:"兩次輸入密碼不一致!"
124                         },
125                         email:{
126                             required:"郵箱不能為空!",
127                             email:"郵箱格式不正確!"
128                         },
129                         username:{
130                             required:"姓名不能為空!",
131                             maxlength:"姓名不得多於5位!"
132                         },
133                         sex:{
134                             required:"性別必須勾選!"
135                         }
136                     },
137                     errorElement: "label", //用來創建錯誤提示信息標簽,validate插件預設的就是label
138                     success: function(label) { //驗證成功後的執行的回調函數
139                         //label指向上面那個錯誤提示信息標簽label
140                         label.text(" ") //清空錯誤提示消息
141                             .addClass("success"); //加上自定義的success類
142                     }
143                 });
144             });
145         </script>
146     </head>
147     <body>
148         <div id="contanier">
149             <div id="top">
150                 <div class="top">
151                     <img src="../img/logo2.png" height="47px"/>
152                 </div>
153                 <div class="top">
154                     <img src="../img/header.png" height="45px" />
155                 </div>
156                 <div class="top" id="top1">
157                     <a href="#">登錄</a>
158                     <a href="#">註冊</a>
159                     <a href="#">購物車</a>
160                 </div>
161             </div>
162             <div id="menu">
163                 <a href="#"><font size="5" color="white">首頁</font></a>&nbsp;&nbsp;&nbsp;&nbsp;         
164                 <a href="#"><font color="white">電腦辦公</font></a>&nbsp;&nbsp;&nbsp;&nbsp;  
165                 <a href="#"><font color="white">手機數位</font></a>&nbsp;&nbsp;&nbsp;&nbsp;  
166                 <a href="#"><font color="white">鞋靴箱包</font></a>    
167             </div>
168             <div id="form">
169                 <form action="#" method="get" id="registForm">
170                     <div id="father">
171                         <div id="form2">
172                             <table border="0px" width="100%" height="100%" align="center" cellpadding="0px" cellspacing="0px" bgcolor="white">
173                                 <tr>
174                                     <td colspan="2" >
175                                         &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
176                                         <font size="5">會員註冊</font>&nbsp;&nbsp;&nbsp;USER REGISTER 
177                                     </td>
178                                 </tr>
179                                 <tr>
180                                     <td width="180px">
181                                         &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
182                                         &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
183                                         &nbsp;&nbsp;&nbsp;
184                                         <label for="user" >用戶名</label>
185                                     </td>
186                                     <td>
187                                         <em style="color: red;">*</em>&nbsp;&nbsp;&nbsp;<input type="text" name="user" size="35px" id="user"/>
188                                     </td>
189                                 </tr>
190                                 <tr>
191                                     <td>
192                                         &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
193                                         &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
194                                         &nbsp;&nbsp;&nbsp;
195                                         密碼
196                                     </td>
197                                     <td>
198                                         <em style="color: red;">*</em>&nbsp;&nbsp;&nbsp;<input type="password"  name="password" size="35px" id="password" />
199                                     </td>
200                                 </tr>
201                                 <tr>
202                                     <td>
203                                         &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
204                                         &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
205                                         &nbsp;&nbsp;&nbsp;
206                                         確認密碼
207                                     </td>
208                                     <td>
209                                         <em style="color: red;">*</em>&nbsp;&nbsp;&nbsp;<input type="password" name="repassword" size="35px"/>
210                                     </td>
211                                 </tr>
212                                 <tr>
213                                     <td>
214                                         &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
215                                         &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
216                                         &nbsp;&nbsp;&nbsp;
217                                         Email
218                                     </td>
219                                     <td>
220                                         <em style="color: red;">*</em>&nbsp;&nbsp;&nbsp;<input type="text" name="email" size="35px" id="email"/>
221                                     </td>
222                                 </tr>
223                                 <tr>
224                                     <td>
225                                         &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
226                                         &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
227                                         &nbsp;&nbsp;&nbsp;
228                                         姓名
229                                     </td>
230                                     <td>
231                                         <em style="color: red;">*</em>&nbsp;&nbsp;&nbsp;<input type="text" name="username" size="35px"/>
232                                     </td>
233                                 </tr>
234                                 <tr>
235                                     <td>
236                                         &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
237                                         &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
238                                         &nbsp;&nbsp;&nbsp;
239                                         性別
240                                     </td>
241                                     <td>
242                                         <span style="margin-right: 155px;">
243                                             <em style="color: red;">*</em>&nbsp;&nbsp;&nbsp;<input type="radio" name="sex" value="男"/>244                                             <input type="radio" name="sex" value="女"/>女<em></em>
245                                             <label for="sex" class="error" style="display: none;"></label>
246                                         </span>
247                                         
248                                     </td>
249                                 </tr>
250                                 <tr>
251                                     <td>
252                                         &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
253                                         &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
254                                         &nbsp;&nbsp;&nbsp;
255                                         出生日期
256                                     </td>
257                                     <td>
258                                         <em style="color: red;">*</em>&nbsp;&nbsp;&nbsp;<input type="text" name="birthday"  size="35px"/>
259                                     </td>
260                                 </tr>
261                                 <tr>
262                                     <td>
263                                         &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
264                                         &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
265                                         &nbsp;&nbsp;&nbsp;
266                                         驗證碼
267                                     </td>
268                                     <td>
269                                         <em style="color: red;">*</em>&nbsp;&nbsp;&nbsp;<input type="text" name="yanzhengma" />
270                                         <img src="../img/yanzhengma.png" style="height: 18px;width: 85px;"/>
271                                     </td>
272                                 </tr>
273                                 <tr>
274                                     <td colspan="2">
275                                         &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
276                                         &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
277                                         &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
278                                         &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
279                                         &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
280                                         &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
281                                         <input type="submit" value="註      冊" height="50px"/>
282                                     </td>
283                                 </tr>
284                             </table>
285                         </div>
286                     </div>
287                 </form>
288             </div>
289             <div>
290                 <img src="../img/footer.jpg"  width="100%"/>
291             </div>
292             <div id="bottom">
293                 <a href="../案例一:網站信息顯示頁面/網站信息顯示頁面.html">關於我們</a>
294                 <a href="#">聯繫我們</a>
295                 <a href="#">招賢納士</a>
296                 <a href="#">法律聲明</a>
297                 <a href="../案例三:網站友情鏈接顯示頁面/網站友情鏈接顯示頁面.html">友情鏈接</a>
298                 <a href="#">支付方式</a>
299                 <a href="#">配送方式</a>
300                 <a href="#">服務聲明</a>
301                 <a href="#">廣告聲明</a>
302                 <p>
303                     Copyright © 2005-2016 傳智商城 版權所有 
304                 </p>
305             </div>
306         </div>
307     </body>
308 </html>
校驗的完整代碼

案例代碼總結:此代碼中要註意label標簽的用法(見代碼中),還有驗證成功後執行的回調函數的用法(一般是固定的,使用時直接複製粘貼);

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • DNS功能變數名稱記錄 DNS資料庫 區域傳輸 正解和反解在zone記錄當中是由眾多的RR(resource record)組成 資源記錄定義的格式 資源類型的定義:rr_type ...
  • 在嵌入式應用里,除了最核心的數據處理外,我們還會經常和數據傳輸打交道。在使用傳輸介面傳輸數據時避不可免會遇到一個問題,如果傳輸過程中遇到未知硬體干擾發生bit錯誤怎麼辦? 今天給大家講的就是數據傳輸過程中用於差錯檢測的最簡單的方法,即奇偶校驗法。 ...
  • 使用RH 系Linux,Debian系請酌情參照 安裝ftp所需包 安裝ftp包 安裝vsftpd包 註:配置文件路徑 /etc/vsftpd/ 創建ftp用戶,並付賦權 創建普通用戶(我這裡用戶名為huoher) 設置該用戶只能使用ftp而不能通過ssh或其他協議登錄進來 由於用戶是ftp的,不是 ...
  • 在實際的生產環境中,經常會用到sshkey密鑰認證實行數據分發數據等操作,還可以批量操作內網伺服器,實行免密認證進行推送分發數據。 1、環境查看 分發伺服器 節點伺服器 2、伺服器添加系統賬號 3、生成密鑰對 Generating public/private dsa key pair.Enter ...
  • SSH
    SSH簡介 SSH的主要特性 SSH的組成 SSH處理過程 SSH協議的實現工具 ssh 客戶端 ssh 伺服器 ssh 服務的最佳實踐 要使用預設埠 禁止使用protocol version 1 限制可登錄用戶 設定空閑會話超時時長 利用防火牆設置ssh 訪問策略 僅監聽特定的IP 地址 基於口 ...
  • RT ...
  • 今天linux主機中毒了,把用帝國備份王備份之後,恢復了快照到剛建主機的狀態; 哎,只怪當初沒有勤快的去做快照啊; 重新配置好後; 開始使用帝國備份王; 數據恢復之後,打開文章,提示“附加表值出錯” 百度搜索了一堆解決問題,但是解決不了我的問題,我在打開phpmyadmin,發現資料庫里的表dede ...
  • 數組有三種寫法 1. var arr=new Array(); 2. var arr=[1,2,3] 3. var arr=new Array(); arr[0]=1; 下麵我解釋如下代碼: 關鍵詞for是用來迴圈的,用法很簡單,不過用點規律 for(等於什麼;到什麼值;怎麼到那個值),上面的代碼便 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...