[code="java"]
jQuery.validator.addMethod("checkCaptcha", function (value, element){
if(value == null || value == "")
return false || this.optional(element);
var obj = this.optional(element);
$.ajax({
url: validataCode_url,
data:{validateCode:value},
async: false,
dataType: 'json',
success: function (response) {
if(response)
return true || obj;
else{
return false || obj;
}
}
});
},message);
[/code]
struts2返回的json为boolean
现在遇到的情况是response为true或false时提示信息始终都是错误提示,不知何故?
你这个return。。。。
应该把ajax设置成同步的,然后用一个变量来表示return的值,function最后return,否则renturn的是哪个function?
用1和0表示不就行了
你JAVASCRIPT跟踪一下看REPONSE是什么值 就可以了
if(response)
return true || obj;
else{
return false || obj;
}
上面alert一下response
报的什么错,哪报的
ps:if少两个括号
你的response返回时是字符串类型的。
if(response)判断的时候,是判断有没有值。因为就算是false也是有值的。
用response=='true'试试。
怀疑是后台生成json的问题,能不能把后台生成json的代码贴出来?
要返回true|false,后台struts用stream试试。
lz所写的,可以用validate中remote来验证