怎样在jquery easyui 中组合使用校验validType

 我来答
Mr朱由榔
推荐于2016-08-15 · TA获得超过2.9万个赞
知道大有可为答主
回答量:1.5万
采纳率:92%
帮助的人:8058万
展开全部
先前的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]);
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式