EASYUI实现双击行编辑,双击正在编辑的行结束编辑功能。
$(function(){
initTable6();
});
function initTable6(){
var columns6=
[[
{field:'f1',title:'f1',width:80,align:'center',editor:{type:'textbox'}}
,{field:'f2',title:'f2',width:80,align:'center',editor:{type:'textbox'}}
,{field:'f3',title:'f3',width:80,align:'center'}
]];
$('#tb6').datagrid({
remoteSort:false,multiSort:true,scrollbarSize:1,url:'',data: [
{f1:'value11', f2:'value12'}
, {f1:'value21', f2:'value22'}
, {f1:'value31', f2:'value32'}
, {f1:'value41', f2:'value42'}
],
fitColumns:false,singleSelect:true,
autoRowHeight:true,columns:columns6,
checkOnSelect :true,selectOnCheck :true,
nowrap:true, rownumbers:true, striped:true ,
pagination:false, pageSize:50, pageList:[50,100,300],showFooter:false,
loadMsg:'加载中,请稍候..', onDblClickRow:dblClickRow,
onHeaderContextMenu: function(e, field){
e.preventDefault();
if (!cmenu) createColumnMenu(id);
cmenu.menu('show', {left:e.pageX,top:e.pageY});
}
});
}
function dblClickRow(index,row) {
var index1=-1;
//获取当前正在编辑第一个编辑单元格
var att=document.getElementsByClassName('datagrid-row-editing')[0];
if (att!=undefined&&att!=null) {
//获取该单元格的行号
index1 = att.getAttribute('datagrid-row-index');
}
//结束所有正在编辑的行
var rows=$('#tb6').datagrid('getRows');
rows.forEach(function (row1,index1) {
$('#tb6').datagrid('endEdit',index1);
});
//双击不是正在编辑的行时开始编辑
if (index!=index1) {
$('#tb6').datagrid('beginEdit',index);
}
}