網上圖書商城1--User模組,網上商城1--user

來源:互聯網
上載者:User

網書商城1--User模組,網上商城1--user

1. 註冊

  1 $(function() {  2     /*  3      * 1. 得到所有的錯誤資訊,迴圈遍曆之。調用一個方法來確定是否顯示錯誤資訊!  4      */  5     $(".errorClass").each(function() {  6         showError($(this));//遍曆每個元素,使用每個元素來調用showError方法  7     });  8       9     /* 10      * 2. 切換註冊按鈕的圖片 11      */ 12     $("#submitBtn").hover( 13         function() { 14             $("#submitBtn").attr("src", "/goods/images/regist2.jpg"); 15         }, 16         function() { 17             $("#submitBtn").attr("src", "/goods/images/regist1.jpg"); 18         } 19     ); 20      21     /* 22      * 3. 輸入框得到焦點隱藏錯誤資訊 23      */ 24     $(".inputClass").focus(function() { 25         var labelId = $(this).attr("id") + "Error";//通過輸入框找到對應的label的id 26         $("#" + labelId).text("");//把label的內容清空! 27         showError($("#" + labelId));//隱藏沒有資訊的label 28     }); 29      30     /* 31      * 4. 輸入框失去焦點進行校正 32      */ 33     $(".inputClass").blur(function() { 34         var id = $(this).attr("id");//擷取當前輸入框的id 35         var funName = "validate" + id.substring(0,1).toUpperCase() + id.substring(1) + "()";//得到對應的校正函數名 36         eval(funName);//執行函數調用 37     }); 38      39     /* 40      * 5. 表單提交時進行校正 41      */ 42     $("#registForm").submit(function() { 43         var bool = true;//表示校正通過 44         if(!validateLoginname()) { 45             bool = false; 46         } 47         if(!validateLoginpass()) { 48             bool = false; 49         } 50         if(!validateReloginpass()) { 51             bool = false; 52         } 53         if(!validateEmail()) { 54             bool = false; 55         } 56         if(!validateVerifyCode()) { 57             bool = false; 58         } 59          60         return bool; 61     }); 62 }); 63  64 /* 65  * 登入名稱校正方法 66  */ 67 function validateLoginname() { 68     var id = "loginname"; 69     var value = $("#" + id).val();//擷取輸入框內容 70     /* 71      * 1. 非空校正 72      */ 73     if(!value) { 74         /* 75          * 擷取對應的label 76          * 添加錯誤資訊 77          * 顯示label 78          */ 79         $("#" + id + "Error").text("使用者名稱不可為空!"); 80         showError($("#" + id + "Error")); 81         return false; 82     } 83     /* 84      * 2. 長度校正 85      */ 86     if(value.length < 3 || value.length > 20) { 87         /* 88          * 擷取對應的label 89          * 添加錯誤資訊 90          * 顯示label 91          */ 92         $("#" + id + "Error").text("使用者名稱長度必須在3 ~ 20之間!"); 93         showError($("#" + id + "Error")); 94         false; 95     } 96     /* 97      * 3. 是否註冊校正 98      */ 99     $.ajax({100         url:"/goods/UserServlet",//要請求的servlet101         data:{method:"ajaxValidateLoginname", loginname:value},//給伺服器的參數102         type:"POST",103         dataType:"json",104         async:false,//是否非同步請求,如果是非同步,那麼不會等伺服器返回,我們這個函數就向下運行了。105         cache:false,106         success:function(result) {107             if(!result) {//如果校正失敗108                 $("#" + id + "Error").text("使用者名稱已被註冊!");109                 showError($("#" + id + "Error"));110                 return false;111             }112         }113     });114     return true;115 }116 117 /*118  * 登入密碼校正方法119  */120 function validateLoginpass() {121     var id = "loginpass";122     var value = $("#" + id).val();//擷取輸入框內容123     /*124      * 1. 非空校正125      */126     if(!value) {127         /*128          * 擷取對應的label129          * 添加錯誤資訊130          * 顯示label131          */132         $("#" + id + "Error").text("密碼不可為空!");133         showError($("#" + id + "Error"));134         return false;135     }136     /*137      * 2. 長度校正138      */139     if(value.length < 3 || value.length > 20) {140         /*141          * 擷取對應的label142          * 添加錯誤資訊143          * 顯示label144          */145         $("#" + id + "Error").text("密碼長度必須在3 ~ 20之間!");146         showError($("#" + id + "Error"));147         false;148     }149     return true;    150 }151 152 /*153  * 確認密碼校正方法154  */155 function validateReloginpass() {156     var id = "reloginpass";157     var value = $("#" + id).val();//擷取輸入框內容158     /*159      * 1. 非空校正160      */161     if(!value) {162         /*163          * 擷取對應的label164          * 添加錯誤資訊165          * 顯示label166          */167         $("#" + id + "Error").text("確認密碼不可為空!");168         showError($("#" + id + "Error"));169         return false;170     }171     /*172      * 2. 兩次輸入是否一致校正173      */174     if(value != $("#loginpass").val()) {175         /*176          * 擷取對應的label177          * 添加錯誤資訊178          * 顯示label179          */180         $("#" + id + "Error").text("兩次輸入不一致!");181         showError($("#" + id + "Error"));182         false;183     }184     return true;    185 }186 187 /*188  * Email校正方法189  */190 function validateEmail() {191     var id = "email";192     var value = $("#" + id).val();//擷取輸入框內容193     /*194      * 1. 非空校正195      */196     if(!value) {197         /*198          * 擷取對應的label199          * 添加錯誤資訊200          * 顯示label201          */202         $("#" + id + "Error").text("Email不可為空!");203         showError($("#" + id + "Error"));204         return false;205     }206     /*207      * 2. Email格式校正208      */209     if(!/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/.test(value)) {210         /*211          * 擷取對應的label212          * 添加錯誤資訊213          * 顯示label214          */215         $("#" + id + "Error").text("錯誤的Email格式!");216         showError($("#" + id + "Error"));217         false;218     }219     /*220      * 3. 是否註冊校正221      */222     $.ajax({223         url:"/goods/UserServlet",//要請求的servlet224         data:{method:"ajaxValidateEmail", email:value},//給伺服器的參數225         type:"POST",226         dataType:"json",227         async:false,//是否非同步請求,如果是非同步,那麼不會等伺服器返回,我們這個函數就向下運行了。228         cache:false,229         success:function(result) {230             if(!result) {//如果校正失敗231                 $("#" + id + "Error").text("Email已被註冊!");232                 showError($("#" + id + "Error"));233                 return false;234             }235         }236     });237     return true;        238 }239 240 /*241  * 驗證碼校正方法242  */243 function validateVerifyCode() {244     var id = "verifyCode";245     var value = $("#" + id).val();//擷取輸入框內容246     /*247      * 1. 非空校正248      */249     if(!value) {250         /*251          * 擷取對應的label252          * 添加錯誤資訊253          * 顯示label254          */255         $("#" + id + "Error").text("驗證碼不可為空!");256         showError($("#" + id + "Error"));257         return false;258     }259     /*260      * 2. 長度校正261      */262     if(value.length != 4) {263         /*264          * 擷取對應的label265          * 添加錯誤資訊266          * 顯示label267          */268         $("#" + id + "Error").text("錯誤的驗證碼!");269         showError($("#" + id + "Error"));270         false;271     }272     /*273      * 3. 是否正確274      */275     $.ajax({276         url:"/goods/UserServlet",//要請求的servlet277         data:{method:"ajaxValidateVerifyCode", verifyCode:value},//給伺服器的參數278         type:"POST",279         dataType:"json",280         async:false,//是否非同步請求,如果是非同步,那麼不會等伺服器返回,我們這個函數就向下運行了。281         cache:false,282         success:function(result) {283             if(!result) {//如果校正失敗284                 $("#" + id + "Error").text("驗證碼錯誤!");285                 showError($("#" + id + "Error"));286                 return false;287             }288         }289     });290     return true;        291 }292 293 /*294  * 判斷當前元素是否存在內容,如果存在顯示,不頁面不顯示!295  */296 function showError(ele) {297     var text = ele.text();//擷取元素的內容298     if(!text) {//如果沒有內容299         ele.css("display", "none");//隱藏元素300     } else {//如果有內容301         ele.css("display", "");//顯示元素302     }303 }304 305 /*306  * 換一張驗證碼307  */308 function _hyz() {309     /*310      * 1. 擷取<img>元素311      * 2. 重新設定它的src312      * 3. 使用毫秒來添加參數313      */314     $("#imgVerifyCode").attr("src", "/goods/VerifyCodeServlet?a=" + new Date().getTime());315 }
regist.js

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.