datagrid 如何通过单击表格的某一行或者某一格来更改内容

这个是通过双击单元格或者行修改内容,以下是具体写法,在这里遇到一个问题,之前一直用post,分页参数始终带不过去,改为get就可以了

function init(){
var name = document.getElementById("name").value;
$('#dataGrid').datagrid({
url:"${basepath}/sys/group/grouplist",
method: 'get',
pagination:true, //是否分页
pageSize:20,
pageNumber:1,
striped:true,
loadMsg:"加载中...",
rownumbers:false,
collapsible:true,
singleSelect: true, //是否单选
fit:true,
pageList: [5, 10, 15, 20, 25, 30],
queryParams: {//查询条件
name: name
}
frozenColumns:[[
{field:'id',checkbox:true}
]],
columns:[[
{field:"name",title:"组名称",width:"200",align:"center"}
]]
,
onDblClickRow: function ( field, row) {
updateGroups1(field,row);
}
//        ,
// onDblClickCell: function (rowIndex, field, value) {
// updateGroups2(rowIndex, field, value);
//
// }

})
}

//1.这个用单元格写的,只修改选中的单元格
function updateGroups2(rowIndex, field, value){
var ids=[];
var rows = $('#dataGrid').datagrid('getSelections');
for(var i=0; i<rows.length; i++){
ids.push(rows[i].id);
}// 获取选中行id

if(field == 'name'){ //判断列名
$('#dataGrid').datagrid('updateRow', {
index: rowIndex,//行号
row: {
name: 'ids+')" />', //name:双击的列名
iconCls: 'icon-save'
}
});
}
if(field == 'ip'){
$('#dataGrid').datagrid('updateRow', {
index: rowIndex,
row: {
ip: 'ids+')" />',
iconCls: 'icon-save'
}
});
}

}

//这个用行rows写的 一次修改一行
function updateGroups(field, row) {
$('#dataGrid').datagrid('updateRow', {
index: field,
row: {
name: 'name + '" οnblur="updateName(' + row.id + ')" />',
ip: 'ip+ '" οnblur="updateName(' + row.id + ')" />',
iconCls: 'icon-save'
}
});
}

//这个是离开输入框时间 提交
function updateName(id){
var upname=document.getElementById("upname").value;
if(upname!=''){
$.ajax({
type:'post',
url:'${basepath}/sys/group/updateName',
data: {"id":id,"upname":upname},
success:function (data){
$("#dataGrid").datagrid("reload",id);
}
})
}
}

你可能感兴趣的:(干货,储存,双击修改内容,datagrid,修改某一格内容,修改某一行内容,双击修改事件)