0

我想根据返回的数据值验证我的表单,除非我返回整个 post 函数为 false,否则它不会返回 false。是否可以根据满足哪个条件来区分它是如何返回的?这就是我所拥有的:

function postValidation(){

   $.post('file.php',$('#form').serialize(), function(data) {

      if(data !== 'good') {
             alert(data);
             return false;
          }  else

            if(data  == 'good') 
            {return true;}
   });

}
4

1 回答 1

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();
       }
   });
}
于 2013-01-30T19:27:08.173 回答