我已经在谷歌上搜索了很长一段时间,并在我的错误修复列表中避免了这个错误,但我终于到达了列表的末尾,我必须让一个函数返回true/false来说明验证是否成功。
我使用ajax将某些字段与数据库中已有的字段进行比较,默认情况下,$.post()
方法异步执行其操作。
我在调用onSuccess
中设置了一个变量,因此调用方法没有得到响应,所以我所有的js/jquery都在pageLoad上失败了……如果我仍然可以继续使用$.post
方法,我会更愿意。
发布于 2011-04-28 23:50:43
如果需要同步请求,请将该请求的async
属性设置为false
。查看jQuery AJAX Doc
发布于 2013-05-08 22:24:08
在Jquery文档中:将async选项指定为false,以获得同步Ajax请求。然后你的回调可以在你的母函数继续之前设置一些数据。
如果按照建议进行更改,代码将如下所示:
beforecreate: function(node,targetNode,type,to) {
jQuery.ajax({
url: url,
success: function(result) {
if(result.isOk == false)
alert(result.message);
},
async: false
});
}
这是因为$.ajax是唯一可以为其设置异步的请求类型
https://stackoverflow.com/questions/5821380
复制相似问题