我有这个ajax检查来查看该名称是否找到或未找到。当数据返回found时它工作得很好,但是当它返回nofound时,我必须再次提交才能触发它。
有人对此有建议或更好的解决方案吗?
$('#formletter').submit(function() {
var name = $('#name').val();
if ($.formLoading != false) {
$.ajax({
type: 'POST',
url: "submit_ajax_contents.php",
data: "namecheck="+name,
success: function(data) {
if(data == 'nofound'){
$.formLoading = false;
$('#formletter').submit();
}else{
alert('found');
$.formLoading = true;
}
}
});
return false;
} else {
return true;
}
});
});
非常感谢:)
最佳答案
您可能想要执行非异步 ajax 调用:(我没有测试此代码)
$('#formletter').submit(function(event) {
var name = $('#name').val();
var found = false;
$.ajax({
async: false,
type: 'POST',
url: "submit_ajax_contents.php",
data: "namecheck="+name,
success: function(data) {
if(data == 'found')
found = true;
}
});
if (found)
event.preventDefault();
});
关于jQuery ajax检查并提交表单,当ajax返回nofound时总是必须提交两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4280763/