easyui扩展正则验证,函数验证

   用easyui做业务系统,对于默认的几个验证规则,肯定是不够的,难免会增加几种规则。可是问题来了,往往是我们在开发会遇到很多各种各样的验证,时间久了才发现,这些扩展的正则无非就是添加一个正则验证规则,那我为啥不将正则放到前端呢?想到这个说干就干,于是有了REGEX这个验证规则,愉快的调用几次后,感觉这功能还不错,心里贼爽了下。一段时间后,发现有些验证居然还和数据业务有关系,这下问题又来,难道我又要些一堆的规则!到底能不能象我的正则验证一样统一呢。果不其然,在苦思冥想半小时后,我这FUN验证规则浮出水面。

 //自定义正则验证
    REGEX: {
        validator: function (value, param) {
            var regex = param[0];
            var re = new RegExp(regex);
            return re.test(value);
        },
        message: '{1}'
    },
    //自定义函数验证
    FUN: {
        validator: function (value, param) {
            var fun = param[0];
            if ($.isFunction(fun)) {
                return fun(value);
            }
            return true;
        },
        message: '{1}'
    },

  解释一下,$.extend($.fn.validatebox.defaults.rules,{}),这里可以扩展很多规则,当然现在又了 REGEX 和 FUN 规则,感觉可以不用写其他的规则了,小小满足一下。

哇,功能这么强大,那我要怎么使用呢?

   FUN:

  <label for="F_FPSL" class="input_lable ">发票税率(%)</label><input type="text" name="F_FPSL" class="easyui-textbox input_box" data-options="width:107,prompt:'多个税率逗号隔开',validType:{FUN:[Jsdwxx.validatafpsl,'发票税率只能录入数字']}" />

  REGEX:

 <label for="F_SBDQ" class="input_lable ">上报地区</label><input type="text" name="F_SBDQ" class="easyui-textbox input_box" data-options="width:132,prompt:'例如:ZYCC',validType:{REGEX:['^[A-Za-z]{4}$','上报地区为4个字母']},boxCls:'uppercase'" /></li>

 PS:规则中 {0},{1},{...}和前台定义REGEX:[0,1,...]一一对应

转载于:https://www.cnblogs.com/yfrs/p/4748522.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值