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 : '請輸入整數'
}
});