EasyUI的自定义验证!

    xiaoxiao2024-07-24  10

    小知识:

    换行 <div class="clear"></div> 隐藏 <input hidden="true" type="text" name="id"/> easyui表单自动加载数据 $("表单ID").form('load', "请求地址/json字符串"); 获取url的最后位数 var url = window.location.search; var searchId= url.substring(url.lastIndexOf('=')+1, url.length);

    1.easyUI自定义验证直接放到某个js中,用的时候引一下

    $.extend($.fn.validatebox.defaults.rules, { idcard: {// 验证身份证 validator: function (value) { return /^\d{15}(\d{2}[A-Za-z0-9])?$/i.test(value); }, message: '身份证号码格式不正确' }, minLength: { validator: function (value, param) { return value.length >= param[0]; }, message: '请输入至少{0}个字符.' }, maxLength: { validator: function (value, param) { return value.length <= param[0]; }, message: '请输入至多{0}个字符.' }, length: { validator: function (value, param) { var len = $.trim(value).length; return len >= param[0] && len <= param[1]; }, message: "输入内容长度必须介于{0}和{1}之间." }, floatPrecision: { validator: function (value, param) { if(!/^\d+(\.\d+)?$/i.test(value)){ return false; } if(param==0){ return /-?[1-9]\d*/i.test(value); } var len = $.trim(value).toString().split(".")[1].length; return len == param[0]; }, message: "必须是数字且小数位数需要精确到{0}位." }, phone: {// 验证电话号码 validator: function (value) { return /^((\d2,3)|(\d{3}\-))?(0\d2,3|0\d{2,3}-)?[1-9]\d{6,7}(\-\d{1,4})?$/i.test(value); }, message: '格式不正确,请使用下面格式:010-88888888' }, mobile: {// 验证手机号码 validator: function (value) { return /^(13|15|18)\d{9}$/i.test(value); }, message: '手机号码格式不正确' }, intOrFloat: {// 验证整数或小数 validator: function (value) { return /^\d+(\.\d+)?$/i.test(value); }, message: '请输入数字,并确保格式正确' }, currency: {// 验证货币 validator: function (value) { return /^\d+(\.\d+)?$/i.test(value); }, message: '货币格式不正确' }, qq: {// 验证QQ,从10000开始 validator: function (value) { return /^[1-9]\d{4,9}$/i.test(value); }, message: 'QQ号码格式不正确' }, Integer: {// 验证正整数 validator: function (value) { //return /^[+]?[1-9]+\d*$/i.test(value); return /^[1-9]*[1-9][0-9]*$/i.test(value); }, message: '请输入整数' }, Double: {// 验证整数 可正负数 validator: function (value) { //return /^[+]?[1-9]+\d*$/i.test(value); return /(([1-9]\d*)(\.\d{1,})|(0\.[1-9]\d*)|(0\.\d*[1-9]))$/i.test(value); }, message: '数字类型输入错误.' }, Timestamp: {// 验证日期 validator: function (value) { //格式yyyy-MM-dd或yyyy-M-d return /^(?:(?!0000)[0-9]{4}([-]?)(?:(?:0?[1-9]|1[0-2])\1(?:0?[1-9]|1[0-9]|2[0-8])|(?:0?[13-9]|1[0-2])\1(?:29|30)|(?:0?[13578]|1[02])\1(?:31))|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)([-]?)0?2\2(?:29))$/i.test(value); }, message: '请输入yyyy-MM-dd的日期格式' }, String: {// 非空格 validator: function (value) { return $.trim(value).length>0; }, message: '请输入非空字符串.' }, Boolean: {// boolean validator: function (value) { var rvalue = $.trim(value); return rvalue=="true"||rvalue=="false"; }, message: '请输入false或者true.' }, age: {// 验证年龄 validator: function (value) { return /^(?:[1-9][0-9]?|1[01][0-9]|120)$/i.test(value); }, message: '年龄必须是0到120之间的整数' }, chinese: {// 验证中文 validator: function (value) { return /^[\Α-\¥]+$/i.test(value); }, message: '请输入中文' }, english: {// 验证英语 validator: function (value) { return /^[A-Za-z]+$/i.test(value); }, message: '请输入英文' }, unnormal: {// 验证是否包含空格和非法字符 validator: function (value) { return /.+/i.test(value); }, message: '输入值不能为空和包含其他非法字符' }, username: {// 验证用户名 validator: function (value) { return /^[a-zA-Z][a-zA-Z0-9_]{5,15}$/i.test(value); }, message: '用户名不合法(字母开头,允许6-16字节,允许字母数字下划线)' }, faxno: {// 验证传真 validator: function (value) { // return /^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/i.test(value); return /^((\d2,3)|(\d{3}\-))?(0\d2,3|0\d{2,3}-)?[1-9]\d{6,7}(\-\d{1,4})?$/i.test(value); }, message: '传真号码不正确' }, zip: {// 验证邮政编码 validator: function (value) { return /^[1-9]\d{5}$/i.test(value); }, message: '邮政编码格式不正确' }, ip: {// 验证IP地址 validator: function (value) { return /d+.d+.d+.d+/i.test(value); }, message: 'IP地址格式不正确' }, name: {// 验证姓名,可以是中文或英文 validator: function (value) { return /^[\Α-\¥]+$/i.test(value) | /^\w+[\w\s]+\w+$/i.test(value); }, message: '请输入姓名' }, email: {// 验证邮箱地址 validator: function (value) { return /\w[-\w.+]*@([A-Za-z0-9][-A-Za-z0-9]+\.)+[A-Za-z]{2,14}/i.test(value); }, message: 'Email地址不正确.' }, datebox: {// 验证日期 validator: function (value) { //格式yyyy-MM-dd或yyyy-M-d return /^(?:(?!0000)[0-9]{4}([-]?)(?:(?:0?[1-9]|1[0-2])\1(?:0?[1-9]|1[0-9]|2[0-8])|(?:0?[13-9]|1[0-2])\1(?:29|30)|(?:0?[13578]|1[02])\1(?:31))|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)([-]?)0?2\2(?:29))$/i.test(value); }, message: '请输入合适的日期格式' }, datetimebox: {// 验证时间 validator: function (value) { //格式yyyy-MM-dd或yyyy-M-d return /^(?:(?:(?:(?:(?:(?:1[6-9]|[2-9]\d)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00)))(\/|-)(?:0?2\1(?:29)))|(?:(?:(?:1[6-9]|[2-9]\d)?\d{2})(\/|-)(?:(?:(?:0?[13578]|1[02])\2(?:31))|(?:(?:0?[1,3-9]|1[0-2])\2(29|30))|(?:(?:0?[1-9])|(?:1[0-2]))\2(?:0?[1-9]|1\d|2[0-8])))))\s(?:([0-1]\d|2[0-3]):[0-5]\d:[0-5]\d)$/i.test(value); }, message: '请输入合适的日期格式' }, msn: { validator: function (value) { return /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test(value); }, message: '请输入有效的msn账号(例:abc@hotnail(msn/live).com)' }, same: { validator: function (value, param) { if ($("#" + param[0]).val() != "" && value != "") { return $("#" + param[0]).val() == value; } else { return true; } }, message: '两次输入的密码不一致!' } });

    2.引入后还要进行三个步骤

    1,在表单属性中赋值validType支持多验证,不明白的可以看js源码 eg: <input class="easyui-textbox" type="text" name="名字" disabled/readonly value="默认值" data-options="required:true/false,validType:['floatPrecision["小数位数"]','length[0,"字符串最大长度"]','验证的类型']" invalidMessage="出错后出现的错误提示,不填则显示js中写的错误" missingMessage="如果设置了required=true则当空值时显示此处写的内容." style="width:'宽度这里可以不设置200px/100%'"></input> 2,这个是验证的使用验证必须的,在script 代码块最开始定义即可! $(":submit").click(function(){ if(!$("表单ID").form('validate')){ return false; } })

    -3,表单验证成功后才能进行里边的操作

    if($("表单ID").form('validate')){ //操作的代码 }
    转载请注明原文地址: https://ju.6miu.com/read-1290994.html
    最新回复(0)