【发布时间】:2016-08-15 20:21:05
【问题描述】:
我是 javascript 的初学者,所以不断学习很多新东西,所以如果我问了一个非常愚蠢的问题,请不要生气,因为我还在学习。尝试实现回调而不是异步:false。将此方法添加到 jquery Validator 插件。使用 async false 可以正常工作,但我不想使用它。任何帮助表示赞赏:)
$.validator.addMethod( "CheckIfUsed",
function(value, element) {
var isSuccess
$.ajax({url :"/x/validate",
data : JSON.stringify({model:$(element).data('model'),
field:element.name,
equals:value}),
contentType : 'application/json',
type : 'POST',
async: true,
success: function(res){
{ isSuccess = res === "true" ? true : false }
}
})
return isSuccess
},"That data allready used");
试试这个:Javascript callback functions with ajax - 没用
或者我做错了什么
【问题讨论】:
-
你看过插件中包含的“远程”验证吗? jqueryvalidation.org/remote-method
-
不完全,不记得这种方法出了什么问题。根本无法让它工作
-
是否有原因“远程”在您的情况下不起作用,文档中的示例几乎与您在此处描述的完全一样。
-
我很清楚它如何帮助异步。目前的问题是 async true 它不会等待数据。如果我这样做,问题仍然存在还是我错了?
-
只要知道你现在使用 asnyc 的方法永远不会有任何收获:true。它永远不会在返回 null 之前等待结果
标签: javascript jquery ajax callback