我想根据返回的数据值验证我的表单,它不会返回false,除非我返回整个post函数false。是否可以根据满足的条件区分返回方式?这就是我所拥有的:
function postValidation(){
$.post('file.php',$('#form').serialize(), function(data) {
if(data !== 'good') {
alert(data);
return false;
} else
if(data == 'good')
{return true;}
});
}
答案 0 :(得分:2)
你想做的事情是不可能的。您不能使用ajax回调的返回值。一切都必须在回调本身(或任何相关的回调)中完成。
$("#form").on('submit', function (e) {
//stop form from submitting
postValidation();
e.preventDefault();
});
function postValidation () {
$.post(...).done(function (data) {
if (data === 'good') {
//handle form success; do whatever you want
window.location.reload();
}
});
}