我有形式小問題,我使用JS進行驗證。表單驗證錯誤
這裏是我的表單代碼。
<form method="get" onkeydown="checkEnter()" action="emailform.php" id="signupform" name="subscribe">
<input name="email" id="email" type="text" value="Enter Email for Updates" onfocus="if(this.value=='Enter Email for Updates'){this.value=''};" />
<input type="hidden" name="submitted" id="submitted" value="true" />
</form>
id signupform我用於驗證和提交表單是按下輸入按鈕。
但是有問題,當把signupform然後我的驗證開始工作很好,當我輸入正確的郵箱是顯示我的錯誤,當我刪除signupform ID,然後在我的表單提交做工精細未經驗證。
這裏是ID signupform我的JS代碼。
function SubscribeForm() {
$('#signupform').submit(function() {
$('.email').removeClass('error')
$('em.error').remove();
var error = false;
var emailReg = /^([\w-\.][email protected]([\w-]+\.)+[\w-]{2,4})?$/;
if ($.trim($('.email').val()) == '') {
$(this).append('<em class="error">Please enter your email address.</em>');
$(this).addClass('error');
error = true;
} else if (!emailReg.test(jQuery.trim($('.email').val()))) {
$(this).append('<em class="error">Please enter a valid email address</em>');
$(this).addClass('error');
error = true;
}
if (!error) {
$("#submit", this).after('<span id="form_loading"></span>');
var formValues = $(this).serialize();
$.post($(this).attr('action'), formValues, function (data) {
$("#signupform").before(data);
});
$(':input[type="text"]').attr('value', '');
}
return false
});
}
真的很感謝你的幫助。我希望它的小問題或我錯過的東西。 –