我想獲取提交表單而不重新加載頁面。jquery,AJAX表單提交不起作用。頁面崩潰
這裏的腳本:
$(function() {
$("#submit").click(function() {
var email = document.getElementById('emailaddress');
var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
if (!filter.test(email.value)) {
$('#invalidmail').show();
var t=setTimeout(function(){$('#invalidmail').fadeOut("slow");},2000);
email.focus;
return false;
} else {
$.ajax({
type: "POST",
url: "traces_form_handler.cgi",
data: email,
success: function(){
alert("success!");
}
});
alert("success!");
return false;
};
});
});
</script>
和這裏的HTML
<form name="form" method="post">
Email: <input type="text" name="email" id="emailaddress" />
<input type="submit" value="Submit" id="submit"/>
</form>
<p id="invalidmail">Ops! The address you provided is not valid. Please retry.</p>
它的工作原理,直到無效郵件的一部分,但如果我提出一個有效的電子郵件地址,瀏覽器崩潰。
有什麼建議嗎?
謝謝
您需要防止默認提交表單的行動。您正在發送AJAX請求*和*同時提交表單。 – 2012-03-16 17:43:17
您還嘗試過哪些瀏覽器? – Lix 2012-03-16 17:44:20
@Diodeus不是'返回false';'呢? Lix chrome! – lorussian 2012-03-16 17:46:14