jquery easyui 中扩展datagrid自定义方法

1.在easyui 中当业务中涉及到要为datagrid控件添加一些动态属性设置时,可能会用到自定义方法

$.extend($.fn.datagrid.methods, {    
    setDColumnTitle: function(jq, option){    
        if(option.field){  
            return jq.each(function(){    
                var $panel = $(this).datagrid("getPanel");  
                var $field = $('td[field='+option.field+']',$panel);  
                if($field.length){  
                    var $span = $("span",$field).eq(0);  
                    var $span1 = $("span",$field).eq(1);  
                    $span.html(option.title);  
                    $span1.html(option.title);  
                }  
            });  
        }  
        return jq;        
    } ,    
    removeRequired: function(jq, field){    
    if(field){  
            return jq.each(function(){    
                var $panel = $(this).datagrid("getPanel");  
                var $field = $('td[field='+field+']',$panel);  
                if($field.length){  
                    var $input = $("input",$field);                   
                    $input.removeClass("validatebox-text validatebox-invalid").unbind('focus').unbind('blur');
                }  
            });  
        }  
        return jq;            
    },  
    addRequired: function(jq, field){ 
    if(field){  
            return jq.each(function(){    
                var $panel = $(this).datagrid("getPanel");  
                var $field = $('td[field='+field+']',$panel);  
                if($field.length){  
                    var $input = $("input",$field);                   
                    $input.addClass("validatebox-text validatebox-invalid").unbind('focus').unbind('blur');
                }  
            });  
        }          
    },
    addEditor : function(jq, field) {  
    if(field){  
            return jq.each(function(){    
                var $panel = $(this).datagrid("getPanel");  
                var $field = $('td[field='+field+']',$panel);  
                if($field.length){  
                    var $input = $("input",$field);                   
                    $input.removeAttr("readonly");
                }  
            });  
        }  
        return jq;   
    },  
    removeEditor : function(jq, field) {  
    if(field){  
            return jq.each(function(){    
                var $panel = $(this).datagrid("getPanel");  
                var $field = $('td[field='+field+']',$panel);  
                if($field.length){  
                    var $input = $("input",$field);                   
                    $input.attr("readonly","readonly");
                }  
            });  
        }  
        return jq;   
    },  
    disabled : function(jq, field) {  
    if(field){  
            return jq.each(function(){    
                var $panel = $(this).datagrid("getPanel");  
                var $field = $('td[field='+field+']',$panel);  
                if($field.length){  
                    var $input = $("input",$field);                   
                    $input.attr("disabled","disabled");
                }  
            });  
        }  
        return jq;   
    }    
}); 


2.添加自定义验证规则

$.extend($.fn.validatebox.defaults.rules, {   
checkCIDR : {// 验证CIDR  
            validator : function(value) {  
                var reg = /^((1?\d?\d|(2([0-4]\d|5[0-5])))\.){3}(1?\d?\d|(2([0-4]\d|5[0-5])))[/]([0-9]|([1-2][0-9])|(3[0-2]))$/ ;  
                return reg.test(value);  
            },  
            message : 'CIDR格式不正确'  
},
portInteger : {// 验证整数  
            validator : function(value) {  
                return /^[+|-]?[1-9]+\d*$/i.test(value);  
            },  
            message : '请输入整数'  
        }
}); 


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值