我試圖使用jQuery表單插件來動態地提交一個表單上的變化。爲什麼我陷入這個AJAX提交循環?
這絕對有效,但每次用戶更改輸入值時,它都會執行.post,運行我的成功「alert()」,然後反覆重複,直到刷新頁面以停止循環。這裏的代碼:
<!DOCTYPE html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>AJAX Form Test Suite</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js"></script>
<script src="_scripts/jquery.form.js"></script>
<script>
$(document).ready(function() {
var options = {
success: alertYes // post-submit callback
};
// binding to each input's change event
$('#mainForm input').change(function() {
$(this).parent().ajaxSubmit(options);
return false;
});
//success callback function
function alertYes() {
alert('You did it!');
}
});
</script>
</head>
<body>
<div id="ajaxMessage">
<h1>This is a suite AJAX form</h1>
<form id="mainForm" action="saveForm.php" method="post">
<ul class="nolist">
<li class="label"><label>Name</label></li>
<li class="input"><input type="text" name="name" value="Eric Roberts" /></li>
<li class="label"><label>Email</label></li>
<li class="input"><input type="text" name="email" value="[email protected]" /></li>
<li class="label"><input type="submit" name="submit" value="DO IT" /></li>
</ul>
</form>
</div>
</body>
</html>
我做錯了什麼使它不斷循環呢?我假設這是當post.post返回時,警告之後,它會再次模糊一個重新提交ajax調用的輸入,但我不知道爲什麼它會這樣做?
謝謝。
PS這裏是我使用的表格插件:http://jquery.malsup.com/form/ – rhodesjason 2010-01-14 19:23:28