[英]Working Form Validation with Jquery
我一直在嘗試使用可視的復選標記或X鍵入在keyup上的表單字段旁邊進行自己的表單驗證。 我遇到的一個問題是,是否觸發錯誤會在觸發鍵盤后產生新的跨度。 因此,我嘗試在每次輸入鍵后刪除所有元素,以使我獲得一個成功或錯誤消息。 這目前可行,但是我想知道是否有更好的方法可以做到這一點:
jQuery('input#firstname').keyup(function () {
var text = jQuery(this).val();
if (check_text(text) === false || text === '') {
$(this).nextAll().remove();
jQuery(this).after('<span class="form-error">Error</span>');
} else {
$(this).nextAll().remove();
jQuery(this).after('<span class="form-success">Success</span>');
}
});
/* Functions */
function check_text(text) {
var regex = /^[a-zA-Z0-9- ]*$/;
return regex.test(text);
}
工作示例: http : //jsfiddle.net/XBaKQ/1/
我建議您在每個input
旁邊添加跨度
<input id="firstname" /><span class='msg'></span> <br>
<input id="lastname" /><span class='msg'></span>
並在您的腳本設置消息中像這樣:
if (check_text(text) === false || text === '') {
jQuery(this).next(".msg").html('<span class="form-error">Error</span>');
} else {
jQuery(this).next(".msg").html('<span class="form-success">Success</span>');
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.