123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263 |
- /**
- * validType扩展验证
- * @author luoyifan
- * 2018-11-22 17:32:00
- */
- "use strict";
- $.extend($.fn.textbox.defaults.rules, { //正则验证
- sChar: {
- validator: function (value, param) {
- var regEn = /[`~!@#$%^&*+<>?:"{},.\/;'[\]]/im,
- regCn = /[·!#¥——:;“”‘、,|《。》?、【】[\]]/im;
- if (regEn.test(value) || regCn.test(value)) {
- return false;
- }
- return true;
- },
- message: "不能包含特殊字符"
- },
- noCnEn: { //不能输入中文字符
- validator: function (value, param) {
- return !/[\u4e00-\u9fa5]/g.test(value);
- },
- message: "不能输入中文字符"
- },
- isBlank: { //必填项输入空格无效
- validator: function (value, param) {
- return $.trim(value) != '';
- },
- message: "不能为空,全空格也不行"
- },
- numFh: { //不能输入中文字符
- validator: function (value, param) {
- return /^[\d:,]+$/.test(value);
- },
- message: "只能输入数字或英文冒号逗号"
- },
- number: { //验证是否为数字,小数点不能超过1位
- validator: function (value, param) {
- return /^\d*\.{0,1}\d{0,1}$/.test(value);
- },
- message: "请输入数字,且小数点后只能为一位"
- },
- numBigDecimal: { //验证是否为数字,小数点不能超过3位
- validator: function (value, param) {
- return /^\d{0,7}(\.\d{0,3})?$/g.test(value);
- },
- message: "只能输入7位整数和3位小数"
- },
- money: { //验证是否为数字,小数点不能超过2位
- validator: function (value, param) {
- return /^\d{0,7}(\.\d{0,2})?$/g.test(value);
- },
- message: "只能输入7位整数和2位小数"
- },
- moneyBigDecimal: { //验证是否为数字,小数点不能超过2位
- validator: function (value, param) {
- return /^\d{0,7}(\.\d{0,2})?$/g.test(value);
- },
- message: "只能输入7位整数和2位小数"
- },
- moneyBigDecimaZZ: { //验证是否为数字,小数点不能超过2位
- validator: function (value, param) {
- return /^\d{0,17}(\.\d{0,2})?$/g.test(value);
- },
- message: "只能输入17位整数和2位小数"
- }, moneyBigDecimaUse: { //验证是否为数字,小数点不能超过2位
- validator: function (value, param) {
- return /^\d{0,5}(\.\d{0,2})?$/g.test(value);
- },
- message: "只能输入5位整数和2位小数"
- },
- integer: { //验证是否为整数
- validator: function (value, param) {
- return /^[0-9]*$/.test(value);
- },
- message: "请输入正整数"
- },
- gtZero: {
- validator: function (value, param) {
- return parseFloat(value) > 0.0;
- },
- message: "必须大于0"
- },
- gtZeroCon: {
- validator: function (value, param) {
- return parseFloat(value) >= 0.0;
- },
- message: "必须大于等于0"
- },
- minLength: {
- validator: function (value, param) {
- return value.length >= param[0];
- },
- message: '请输入至少(2)个字符.'
- },
- date: { // 验证日期格式----格式yyyy-MM-dd或yyyy-M-d
- validator: function (value) {
- 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: '请输入合适的日期格式'
- },
- testDate: { //验证起始日期和结束日期对比
- validator: function (value, param) {
- var d1 = $('' + param[0] + '').datebox('getValue');
- return value >= d1;
- },
- message: '结束时间必须大于或等于开始时间'
- },
- gteDate: {
- validator: function (value, param) {
- var d1 = $('' + param[0] + '').datebox('getValue');
- return value >= d1;
- },
- message: '结束时间必须大于或等于开始时间'
- },
- lteDate: {
- validator: function (value, param) {
- var d1 = $('' + param[0] + '').datebox('getValue');
- return value <= d1;
- },
- message: '结束时间必须大于或等于开始时间'
- },
- idcard: { // 验证身份证
- validator: function (value) {
- return /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/.test(value);
- },
- message: '身份证号码格式不正确'
- },
- phone: { // 验证电话号码
- validator: function (value) {
- return /^(0[0-9]{2,3}\-)?([2-9][0-9]{6,7})+(\-[0-9]{1,4})?$/i.test(value);
- },
- message: '格式不正确,请使用下面格式:12345678901、1234-12345678-1234'
- },
- mobile: { // 验证手机号码
- validator: function (value) {
- return /^1[3456789]\d{9}$/.test(value);
- },
- message: '手机号码格式不正确'
- },
- 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: '输入值不能为空和包含其他非法字符'
- },
- age: { // 验证年龄
- validator: function (value) {
- return /^(?:[1-9][0-9]?|1[01][0-9]|120)$/i
- .test(value);
- },
- message: '年龄必须是0到120之间的整数'
- },
- zip: { // 验证邮政编码
- validator: function (value) {
- return /^[1-9]\d{5}$/i.test(value);
- },
- message: '邮政编码格式不正确'
- },
- faxno: { // 验证传真
- validator: function (value) {
- return /^((\(\d{2,3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}(\-\d{1,4})?$/i.test(value);
- },
- message: '传真号码不正确'
- },
- same: {
- validator: function (value, param) {
- if ($("#" + param[0]).val() != "" && value != "") {
- return $("#" + param[0]).val() == value;
- } else {
- return true;
- }
- },
- message: '两次输入的密码不一致!'
- },
- menuUrl: { // menu Url 格式验证
- validator: function (value) {
- return /^[A-Za-z0-9_/.]*$/i.test(value);
- },
- message: '请输入正确url地址'
- },
- email: {
- validator: function (value) {
- return /^([a-zA-Z]|[0-9])(\w|\-)+@[a-zA-Z0-9]+\.([a-zA-Z]{2,4})$/.test(value);
- },
- message: '请输入正确的邮箱地址'
- },
- phoneNum: { //验证手机号
- validator: function (value, param) {
- return /^1[3456789]\d{9}$/.test(value);
- },
- message: '请输入正确的手机号码。'
- },
- comboValidate: {
- validator: function (value) {
- var c = $(this).parent().prev();
- var opts = c.combobox('options');
- var data = c.combobox('getData');
- for (var i = 0; i < data.length; i++) {
- if (value === data[i][opts.textField]) {
- return true;
- }
- }
- return false;
- },
- message: '请从下拉框中选择一项'
- },
- dateValidate: { //验证日期
- validator: function (value, param) {
- return /^((?:19|20)\d\d)-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])$/.test(value);
- },
- message: '请输入正确的日期'
- },
- telNum: { //既验证手机号,又验证座机号
- validator: function (value, param) {
- return /(^(0[0-9]{2,3}\-)?([2-9][0-9]{6,7})+(\-[0-9]{1,4})?$)|(^((\(\d{3}\))|(\d{3}\-))?(1[3456789]\d{9})$)|(^(400)-(\d{3})-(\d{4})(.)(\d{1,4})$)|(^(400)-(\d{3})-(\d{4}$))/.test(value);
- },
- message: '请输入正确的电话号码。'
- },
- startTime: {
- validator: function (value, param) {
- var d1 = $.fn.datebox.defaults.parser(param[0]);
- var d2 = value;
- d1 = new Date(d1).Format("yyyy-MM-dd");
- return d2 <= d1;
- },
- message: '开始日期不能大于结束日期!'
- },
- endTime: {
- validator: function (value, param) {
- var d1 = $.fn.datebox.defaults.parser(param[0]);
- var d2 = value;
- d1 = new Date(d1).Format("yyyy-MM-dd");
- return d2 >= d1;
- },
- message: '结束日期不能小于开始日期!'
- },
- gtZeroNotZ: {
- validator: function (value, param) {
- return (parseFloat(value) >= 0.0 && /^[0-9]*$/.test(value));
- },
- message: "非负正整数"
- },
- });
|