博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
EasyUI validType属性
阅读量:4619 次
发布时间:2019-06-09

本文共 12842 字,大约阅读时间需要 42 分钟。

/** * 包含easyui的扩展和常用的方法 * * @author * * @version 20120806 */ var wjc = $.extend({}, wjc);/* 定义全局对象,类似于命名空间或包的作用 */ /** * * @requires jQuery,EasyUI * * panel关闭时回收内存,主要用于layout使用iframe嵌入网页时的内存泄漏问题 */$.fn.panel.defaults.onBeforeDestroy = function() {    var frame = $('iframe', this);    try {        if (frame.length > 0) {            for ( var i = 0; i < frame.length; i++) {                frame[i].contentWindow.document.write('');                frame[i].contentWindow.close();            }            frame.remove();            if ($.browser.msie) {                CollectGarbage();            }        }    } catch (e) {    }}; /** * 使panel和datagrid在加载时提示 * * * @requires jQuery,EasyUI * */$.fn.panel.defaults.loadingMessage = '加载中....';$.fn.datagrid.defaults.loadMsg = '加载中....'; /** * @author wfire * * @requires jQuery,EasyUI * * 通用错误提示 * * 用于datagrid/treegrid/tree/combogrid/combobox/form加载数据出错时的操作 */var easyuiErrorFunction = function(XMLHttpRequest) {    $.messager.progress('close');//  $.messager.alert('错误', XMLHttpRequest.responseText);//  $.messager.confirm('错  误',XMLHttpRequest.responseText,function(r){  //      if (r){
// parent.location.replace('login.jsp');// } // });};$.fn.datagrid.defaults.onLoadError = easyuiErrorFunction;$.fn.treegrid.defaults.onLoadError = easyuiErrorFunction;$.fn.tree.defaults.onLoadError = easyuiErrorFunction;$.fn.combogrid.defaults.onLoadError = easyuiErrorFunction;$.fn.combobox.defaults.onLoadError = easyuiErrorFunction;$.fn.form.defaults.onLoadError = easyuiErrorFunction; /** * * @requires jQuery,EasyUI * * 为datagrid、treegrid增加表头菜单,用于显示或隐藏列,注意:冻结列不在此菜单中 */var createGridHeaderContextMenu = function(e, field) { e.preventDefault(); var grid = $(this);/* grid本身 */ var headerContextMenu = this.headerContextMenu;/* grid上的列头菜单对象 */ if (!headerContextMenu) { var tmenu = $('
').appendTo('body'); var fields = grid.datagrid('getColumnFields'); for ( var i = 0; i < fields.length; i++) { var fildOption = grid.datagrid('getColumnOption', fields[i]); if (!fildOption.hidden) { $('
').html(fildOption.title).appendTo(tmenu); } else { $('
').html(fildOption.title).appendTo(tmenu); } } headerContextMenu = this.headerContextMenu = tmenu.menu({ onClick : function(item) { var field = $(item.target).attr('field'); if (item.iconCls == 'icon-ok') { grid.datagrid('hideColumn', field); $(this).menu('setIcon', { target : item.target, iconCls : 'icon-empty' }); } else { grid.datagrid('showColumn', field); $(this).menu('setIcon', { target : item.target, iconCls : 'icon-ok' }); } } }); } headerContextMenu.menu('show', { left : e.pageX, top : e.pageY });};$.fn.datagrid.defaults.onHeaderContextMenu = createGridHeaderContextMenu;$.fn.treegrid.defaults.onHeaderContextMenu = createGridHeaderContextMenu; /** * * @requires jQuery,EasyUI * * 扩展validatebox,添加验证两次密码功能 */$.extend($.fn.validatebox.defaults.rules, { eqPwd : { validator : function(value, param) { return value == $(param[0]).val(); }, message : '密码不一致!' }, 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: '请输入至少(2)个字符.' }, length:{validator:function(value,param){ var len=$.trim(value).length; return len>=param[0]&&len<=param[1]; }, message:"输入内容长度必须介于{0}和{1}之间." }, phone : {
// 验证电话号码 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 : '格式不正确,请使用下面格式: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); }, message : '请输入整数' }, 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 /^((\(\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 : '传真号码不正确' }, zip : {
// 验证邮政编码 validator : function(value) { return /^[0-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 : '请输入姓名' }, msn:{ validator : function(value){ return /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test(value); }, message : '请输入有效的msn账号(例:abc@hotnail(msn/live).com)' }}); /** * * @requires jQuery,EasyUI * * 扩展tree,使其支持平滑数据格式 */$.fn.tree.defaults.loadFilter = function(data, parent) { var opt = $(this).data().tree.options; var idFiled, textFiled, parentField; if (opt.parentField) { idFiled = opt.idFiled || 'id'; textFiled = opt.textFiled || 'text'; parentField = opt.parentField; var i, l, treeData = [], tmpMap = []; for (i = 0, l = data.length; i < l; i++) { tmpMap[data[i][idFiled]] = data[i]; } for (i = 0, l = data.length; i < l; i++) { if (tmpMap[data[i][parentField]] && data[i][idFiled] != data[i][parentField]) { if (!tmpMap[data[i][parentField]]['children']) tmpMap[data[i][parentField]]['children'] = []; data[i]['text'] = data[i][textFiled]; tmpMap[data[i][parentField]]['children'].push(data[i]); } else { data[i]['text'] = data[i][textFiled]; treeData.push(data[i]); } } return treeData; } return data;}; /** * * @requires jQuery,EasyUI * * 扩展treegrid,使其支持平滑数据格式 */$.fn.treegrid.defaults.loadFilter = function(data, parentId) { var opt = $(this).data().treegrid.options; var idFiled, textFiled, parentField; if (opt.parentField) { idFiled = opt.idFiled || 'id'; textFiled = opt.textFiled || 'text'; parentField = opt.parentField; var i, l, treeData = [], tmpMap = []; for (i = 0, l = data.length; i < l; i++) { tmpMap[data[i][idFiled]] = data[i]; } for (i = 0, l = data.length; i < l; i++) { if (tmpMap[data[i][parentField]] && data[i][idFiled] != data[i][parentField]) { if (!tmpMap[data[i][parentField]]['children']) tmpMap[data[i][parentField]]['children'] = []; data[i]['text'] = data[i][textFiled]; tmpMap[data[i][parentField]]['children'].push(data[i]); } else { data[i]['text'] = data[i][textFiled]; treeData.push(data[i]); } } return treeData; } return data;}; /** * @author wfire * * @requires jQuery,EasyUI * * 扩展combotree,使其支持平滑数据格式 */$.fn.combotree.defaults.loadFilter = $.fn.tree.defaults.loadFilter; /** * * @requires jQuery,EasyUI * * 防止panel/window/dialog组件超出浏览器边界 * @param left * @param top */var easyuiPanelOnMove = function(left, top) { var l = left; var t = top; if (l < 1) { l = 1; } if (t < 1) { t = 1; } var width = parseInt($(this).parent().css('width')) + 14; var height = parseInt($(this).parent().css('height')) + 14; var right = l + width; var buttom = t + height; var browserWidth = $(window).width(); var browserHeight = $(window).height(); if (right > browserWidth) { l = browserWidth - width; } if (buttom > browserHeight) { t = browserHeight - height; } $(this).parent().css({
/* 修正面板位置 */ left : l, top : t });};$.fn.dialog.defaults.onMove = easyuiPanelOnMove;$.fn.window.defaults.onMove = easyuiPanelOnMove;$.fn.panel.defaults.onMove = easyuiPanelOnMove; /** * * @requires jQuery,EasyUI,jQuery cookie plugin * * 更换EasyUI主题的方法 * * @param themeName * 主题名称 */changeTheme = function(themeName) { var $easyuiTheme = $('#easyuiTheme'); var url = $easyuiTheme.attr('href'); var href = url.substring(0, url.indexOf('themes')) + 'themes/' + themeName + '/easyui.css'; $easyuiTheme.attr('href', href); var $iframe = $('iframe'); if ($iframe.length > 0) { for ( var i = 0; i < $iframe.length; i++) { var ifr = $iframe[i]; $(ifr).contents().find('#easyuiTheme').attr('href', href); } } $.cookie('easyuiThemeName', themeName, { expires : 7 });}; serializeObject = function(form) { var o = {}; $.each(form.serializeArray(), function(index) { if (o[this['name']]) { o[this['name']] = o[this['name']] + "," + this['value']; } else { o[this['name']] = this['value']; } }); return o;}; /** * * 增加formatString功能 * * 使用方法:formatString('字符串{0}字符串{1}字符串','第一个变量','第二个变量'); * * @returns 格式化后的字符串 */formatString = function(str) { for ( var i = 0; i < arguments.length - 1; i++) { str = str.replace("{" + i + "}", arguments[i + 1]); } return str;}; stringToList = function(value) { if (value != undefined && value != '') { var values = []; var t = value.split(','); for ( var i = 0; i < t.length; i++) { values.push('' + t[i]);/* 避免他将ID当成数字 */ } return values; } else { return []; }}; //$.ajaxSetup({
// type : 'POST',// error : function(XMLHttpRequest, textStatus, errorThrown) {
// $.messager.progress('close');// $.messager.alert('错误', errorThrown);// }//});/** * @author * * @requires jQuery * * 判断浏览器是否是IE并且版本小于8 * * @returns true/false */wjc.isLessThanIe7 = function() { return ($.browser.msie && $.browser.version < 7);}; //时间格式化wjc.dateFormat = function (format) { /* * eg:format="yyyy-MM-dd hh:mm:ss"; */ if (!format) { format = "yyyy-MM-dd hh:mm:ss"; } var o = { "M+" : this.getMonth() + 1, // month "d+" : this.getDate(), // day "h+" : this.getHours(), // hour "m+" : this.getMinutes(), // minute "s+" : this.getSeconds(), // second "q+" : Math.floor((this.getMonth() + 3) / 3), // quarter "S" : this.getMilliseconds() // millisecond }; if (/(y+)/.test(format)) { format = format.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length)); } for (var k in o) { if (new RegExp("(" + k + ")").test(format)) { format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length)); } } return format;};

出自:http://www.cnblogs.com/exmyth/p/4046216.html

转载于:https://www.cnblogs.com/longqingyang/p/6019220.html

你可能感兴趣的文章
Maven私服配置Setting和Pom文件
查看>>
Linux搭建Nexus3.X构建maven私服
查看>>
NPOI 操作Excel
查看>>
MySql【Error笔记】
查看>>
vue入门
查看>>
JS线程Web worker
查看>>
Flex的动画效果与变换!(三)(完)
查看>>
mysql常见错误码
查看>>
Openresty 与 Tengine
查看>>
使用XV-11激光雷达做hector_slam
查看>>
布局技巧4:使用ViewStub
查看>>
ddt Ui 案例2
查看>>
你还在为使用P/Invoke时,写不出win32 api对应的C#声明而犯愁吗?
查看>>
msbuild property metadata会overwrite msbuild task中的properties
查看>>
python系列前期笔记
查看>>
Android -- sqlite数据库随apk发布
查看>>
Android -- Fragment
查看>>
前端性能优化和规范
查看>>
python 之进程篇
查看>>
框架编程之路一
查看>>