jqgrid編輯行資料及儲存行資料的取值
阿新 • • 發佈:2019-01-27
jqgrid官方API中說了,編輯行模式下,不建議使用 “getRowData” 的方法,事實上用 getRowData 的方法取值為空,或者取值為 html 程式碼。
以下方法退而求其次,取記憶體中的資料,即編輯的資料,在html程式碼中,只是沒有展現,直接通過 $(‘#’+rowid+”_indexRule”).val() 可以取值。
暫時不知道能適用多少瀏覽器。
注意:設定單元格為編輯模式
colModel : [ { name : 'physicalRulesId', index:'physicalRulesId', sortable:false,hidden:true },
{ name : 'businessArea', index : 'businessArea',width:80 },
{ name : 'devFac', index :'devFac', width:80 },
{ name : 'devClass', index : 'devClass',width:80 },
{ name : 'indexClass', index : 'indexClass',width:80 },
{ name : 'indexName', index : 'indexName' },
{ name : 'command' , index : 'command' },
{ name : 'indexRule', index : 'indexRule',width:260,editable:true },
{ name : 'normalValue', index : 'normalValue',width:80 },
{ name : 'abnorInflu', index : 'abnorInflu',width:80}],
var rowid = jQuery("#JindexInfoTable").jqGrid('getGridParam', 'selrow');
var rowData = jQuery("#JindexInfoTable").jqGrid('getRowData', rowid);
console.log(rowData.physicalRulesId + $('#'+rowid+"_indexRule").val());
$('#JindexInfoTable').jqGrid('saveRow',rowid,
function(result){
if(result.responseText == ""){
return false;
}
$.messager.alert('提示',eval(result.responseText),'info');
return true;
},
"volteHealth/updateParamRule.do?paramId="+rowData.physicalRulesId+"&indexRule="+$('#'+rowid+"_indexRule").val()
);