【发布时间】:2011-06-23 16:47:38
【问题描述】:
我已经看过大约 20 篇或更多关于该主题的帖子,但它们要么对我没有意义,要么略有不同。
这也是一个非常简单的场景。我有一个表单,当它提交时,我会进行 ajax 调用以查看电子邮件是否尚未被其他用户接收。如果不采取我想提交表格,如果是,请不要提交表格。
这是 HTML
<form id='greatForm' action='godothat.php' method='post'>
<input type='submit' id='email'>
<button>Send</button>
</form>
JS
$('#greatForm').submit(function(){
// GET THE VARS
var email = $('#email').val();
$.ajax({
data: { 'field1' : email },
type: 'GET',
dataType: 'json',
url: 'url.php',
beforeSend : function(){ },
success: function(answer){
if(answer.error === false){
// Submit this form without doing the ajax call again
}
if(answer.error === true){
// Not ok, don't submit this form
}
}
});
return false;
});
感谢您的帮助。
** 更新 ** 可能我表述的不对。我的意思是如果“answer.error === false”为真,那么提交函数应该返回真。
所以在 AJAX 完成时,如果 answer.error 为 false,则提交应该为 true,反之亦然...
这样更有意义吗?
【问题讨论】:
-
如果没有另一个 ajax 调用,您将无法再次提交表单。你应该在服务器端处理这个。
-
@Dogbert -> 我添加了一个更新。基本上,如果 answer.data 为假,我希望提交返回真。我该怎么做才能得到它?