{field:'price', title:'订货批价',width:80, align:'center',formatter:function(value,rowData,rowIndex){
if($("#isUpdatePrice").val()=="Y"){
editor:'numberbox';
return value;
}
}}
上面这个功能是Jquery做的表,$("#isUpdatePrice").val()的值是在页面加载的时候设置好的,但是我想让这一列根据这个值来判定是否可编辑,我查APi没找到方法!!希望懂的帮忙解决一下,谢谢啦
对Jquery写扩展的方法:
// 扩展方法 禁止被编辑的字段
$.extend($.fn.datagrid.methods, {
addEditor : function(jq, param) {
if (param instanceof Array) {
$.each(param, function(index, item) {
var e = $(jq).datagrid('getColumnOption', item.field);
e.editor = item.editor;
});
} else {
var e = $(jq).datagrid('getColumnOption', param.field);
e.editor = param.editor;
}
},
removeEditor : function(jq, param) {
if (param instanceof Array) {
$.each(param, function(index, item) {
var e = $(jq).datagrid('getColumnOption', item);
e.editor = {};
});
} else {
var e = $(jq).datagrid('getColumnOption', param);
e.editor = {};
}
}
});
$.extend($.fn.datagrid.defaults.editors, {
text: {
init: function(container, options){
var input = $('<input type="text" class="datagrid-editable-input">').appendTo(container);
return input;
},
getValue: function(target){
return $(target).val();
},
setValue: function(target, value){
$(target).val(value);
},
resize: function(target, width){
var input = $(target);
if ($.boxModel == true){
input.width(width - (input.outerWidth() - input.width()));
} else {
input.width(width);
}
}
}
});
这请求发出去,加载数据前触发。如果返回false,加载数据动作则退出
onBeforeLoad : function(data){
if($("#isUpdatePrice").val()=="Y"){//动态传值进行判断
$('div[identifier='+thatId+']').find('table#innerdatagrid-l').datagrid('addEditor', {
field : 'price',
editor : {
type : 'numberbox',
options : {
required : true
}
}
});
}
}
1:$('div[identifier='+thatId+']').find('table#innerdatagrid-l')//获取<tble id="innerdatagrid-l">
.datagrid('addEditor', field : 'price', editor : {
type : 'numberbox',
options : {
required : true
}
}
);
第一个参数“addEditor”表示调用设置编辑的方法
第二个参数“price”表示{field:'price', title:'订货批价', width:80, align:'center'}
第三个参数editor : {
type : 'numberbox',
options : {
required : true
}
}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。