一.获取正在编辑的行索引(方法1)
(索引从0开始)
var i=$('#dgAppeaAdd').datagrid('getEditingRowIndexs'); //获取行索引
$.extend($.fn.datagrid.methods, {
getEditingRowIndexs: function(jq) {
var rows = $.data(jq[0], "datagrid").panel.find('.datagrid-row-editing');
var indexs = [];
rows.each(function(i, row) {
var index = row.sectionRowIndex;
console.log(JSON.stringify(row)+"||"+rows+"||"+JSON.stringify(rows));
// console.log(index+"ww:+"+JSON.stringify(row.sectionRowIndex));
if (indexs.indexOf(index) == -1) {
indexs.push(index);
}
});
return indexs;
}
});
一.获取正在编辑的行索引(方法2)
var tr = $(value).closest('tr.datagrid-row');
var rowIndex = parseInt(tr.attr('datagrid-row-index')); //获取行索引
var editors = $('#dgNeedData').datagrid('getEditors', rowIndex); //获取指定行的编辑器
var partName=$(editors[3].target).textbox('getValue'); //获取输入的客户名称
二.获取正在编辑行中字段的值(此方法只能获取单个字段)
注:index:i 以下i为行索引,field中为字段名
var ed = $('#dgAppeaAdd').datagrid('getEditor', {index:i,field:'inspectionItem'}); //能够获取正在编辑的值
var Item=$(ed.target).textbox('getValue'); //能够获取值
三.获取正在编辑行中字段的值(根据索引获取字段)
注:index:i 以下i为行索引,editors[0].target.val()可获取第一列的值
var editors = $('#dgAppeaAdd').datagrid('getEditors', i); //rowIndex 行编号,从0算起
console.info(editors[0].target.val());
四.自定义datagrid中的行编辑字段
$.extend($.fn.datagrid.defaults.editors, {
text: {
init: function(container, options){
var input = $('<input type="text" class="datagrid-editable-input">').appendTo(container);
return input.text(options);
},
destroy: function(target){
// $(target).remove();
$(target).text('destroy');
},
getValue: function(target){
// return $(target).val();
return $(target).text('getValue');
console.log($(target).text('getValue'));
},
setValue: function(target, value){
// $(target).val(value);
$(target).text('setValue',value);
},
resize: function(target, width){
// $(target)._outerWidth(width);
$(target).text('resize',width);
}
}
});
引用如下:
{ field: 'inspectionItem', title: '检验', align: 'center', titleAlign: true,
editor: { type: 'text',
options: {required: true}
} }