-3

我需要根据从 post 函数之外的 ajax post 返回的数据创建一个条件

function post(){

   $.post('page.php',$('#form').serialize(), function(data) {
   if(data !== 'good'){alert(data); return false;} // take this out of here
});
    //and place it here

}
4

1 回答 1

2

如下代码应该可以正常工作。

function post(){
   var data;
   $.ajax({url:'page.php',
           async:false,
           type:'POST',
           data:$('#form').serialize(), 
           success:function(res) {
                 data = res;
           }
     });
     if(data !== 'good'){alert(data); return false;} // take this out of here
}

但请记住,同步 ajax 调用将冻结您的页面,直到请求完成,您可能会发现最好找到一种方法来做您需要的事情,而无需移动if(data !== 'good'){alert(data); return false;}到成功回调函数之外。

UPD:错过指定请求类型,它应该POST代替 default GET。代码已更新。

于 2013-01-30T17:18:59.223 回答