jquery validationEngine与asp.net的updatepanel兼容问题
我用了validationEnginesettings的代码是这样子的
settings = jQuery.extend({
allrules:allRules,
validationEventTriggers:"blur",
inlineValidation: true,
returnIsValid:false,
ajaxSubmit: false,
promptPosition: "topRight", // OPENNING BOX POSITION, IMPLEMENTED: topLeft, topRight, bottomLeft, centerRight, bottomRight
success : false,
failure : function() {}
}, settings);
初始代码是这样子的
$("form").validationEngine();
然后验证OK
我用PageMethod时,他验证的同时也会提交,所以我加了以下代码
目的是,在PageMethod之前,看一下是否验证通过,如果不通过就取消PageMethod,然后因为他的validation.isError变化无常,我只能在请求结束后把它的值设为null,不然第一次可以验证,第二次就验证不了啦
try{
Sys.WebForms.PageRequestManager.getInstance().add_initializeRequest(
function(sender, args){
if(typeof $.validationEngine.isError != "boolean"){
args.set_cancel(true);
$.validationEngine.isError = null;
}else{
args.set_cancel(false);
}
}
);
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(
function(sender, args){
try{
$.validationEngine.isError = null;
}catch(e){
}
}
)
}catch(e){
alert(e.message);
}
现在验证有时可以有时不可以。
还有一个问题就是,如果我在上面有UpdatePanel
我点了其它按钮,他因为通过不了验证,执行不了后台代码。
更不用说刷新UpdatePanel的内容了
以前是遇到了用.net五大验证控件时,一用updatePanel,有时会提交不了,有时就不验证,会有这个问题。
所以我转用jquery的验证
但用jquery又遇到这个问题,我好郁闷。
补充:.NET技术 , C#