当前位置:编程学习 > C#/ASP.NET >>

jquery validationEngine与asp.net的updatepanel兼容问题

我用了validationEngine
settings的代码是这样子的
        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#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,