关于jquery easyui 组合校验的方法

   先前的jquery easyui 不支持组合校验,我改了一下源代码,现在可以用了,validType="xxx&xxx " 的校验器用 &分割

   改动如下:

            jquery-easyui-xx.js整个包中

                 在:function _2ee(_2ef) 函数下 把 if(opts.validType){  } 整个代码用下面的代码替换

             ------------------------------------

if(opts.validType){
var _b_validTypes = (opts.validType).split(/&/g);   
for(_iii=0;_iii<_b_validTypes.length;_iii++){
    var vType = _b_validTypes[_iii];
    var _2f3=/([a-zA-Z_]+)(.*)/.exec(vType);
    var rule=opts.rules[_2f3[1]];
    if(_2f0&&rule){
    var _2f4=eval(_2f3[2]);
    if(!rule["validator"](_2f0,_2f4)){
    box.addClass("validatebox-invalid");
    var _2f5=rule["message"];
    if(_2f4){
    for(var i=0;i<_2f4.length;i++){
    _2f5=_2f5.replace(new RegExp("\\{"+i+"\\}","g"),_2f4[i]);
    }
    }
    _2f1(opts.invalidMessage||_2f5);
    _2eb(_2ef);
    return false;
    }
    }
  }
}

            -------------------------------------

 

如果你只用 jquery.validatebox.js 模块

  可以这样该:

        在:function _11(_12)函数下把 if(_13.validType){  } 整个代码用下面的代码替换

         --------------------------------------------------

if(_13.validType){
var _b_validTypes = (opts.validType).split(/&/g);   
for(_iii=0;_iii<_b_validTypes.length;_iii++){
    var vType = _b_validTypes[_iii];
    var _17=/([a-zA-Z_]+)(.*)/.exec(vType);
    var _18=_13.rules[_17[1]];
    alert()
    if(_14&&_18){
    var _19=eval(_17[2]);
    if(!_18["validator"](_14,_19)){
    box.addClass("validatebox-invalid");
    var _1a=_18["message"];
    if(_19){
    for(var i=0;i<_19.length;i++){
    _1a=_1a.replace(new RegExp("\\{"+i+"\\}","g"),_19[i]);
    }
                                         

--------------------------------------------------------------

你可能感兴趣的:(关于jquery easyui 组合校验的方法)