今天的目標是要完成登入頁面帳號密碼的防呆判斷
先把登入頁面準備好,這裡就不多做說明,再來就是送出的防呆判斷。
登入按鈕的type要先改成button而不是原本的submit,因為這樣才可以利用JS來判斷。
<input type="button" id="send" value="登入" onclick="sendData()" />
sendData函數的部分,這邊使用checkSpecial來判斷是否包含特殊字元,如有特殊字元,會有提示訊息。
if(checkSpecial($("#account").val())) {
alert("帳號不可包含特殊字元");
} else if(checkSpecial($("#password").val())) {
alert("密碼不可包含特殊字元");
} else {
alert("判斷成功,可以進行登入");
}
checkSpecial函數的部分,這邊是設定只要包含在specialStr裡面的特殊字元,就會回傳true,所以可以依照需求調整特殊字元的判斷。
function checkSpecial(str) {
var specialStr = RegExp(/[(\ )(\~)(\!)(\@)(\#)(\$)(\%)(\^)(\&)(\*)(\()(\))(\-)(\_)(\+)(\=)(\[)(\])(\{)(\})(\|)(\\)(\;)(\:)(\')(\")(\,)(\.)(\/)(\<)(\>)(\?)(\)]+/);
return (specialStr.test(str));
}
這邊有少判斷到未輸入值的狀況,因為這比較簡單這裡就不做示範。
今天的實作結束,明天要處理ajax送單的部分。