HI, 我使用afterSaveCell
將觸發如果我們修改了單元格,然後得到它火災。Jgrid保存細胞點擊
我的情況是,我在做批量更新對保存變化按鈕數據庫。但是當用戶編輯單元格併到達另一個單元格時,我將修改記錄在數組中。
但是,如果用戶編輯該單元格,然後點擊保存更改按鈕細胞焦點不會迷路(不過在編輯模式下)和afterSaveCell
不會被解僱。
有沒有什麼辦法來觸發保存細胞上buttojn點擊使afterSaveCell
得到火災。
請幫助.. 謝謝..
HI, 我使用afterSaveCell
將觸發如果我們修改了單元格,然後得到它火災。Jgrid保存細胞點擊
我的情況是,我在做批量更新對保存變化按鈕數據庫。但是當用戶編輯單元格併到達另一個單元格時,我將修改記錄在數組中。
但是,如果用戶編輯該單元格,然後點擊保存更改按鈕細胞焦點不會迷路(不過在編輯模式下)和afterSaveCell
不會被解僱。
有沒有什麼辦法來觸發保存細胞上buttojn點擊使afterSaveCell
得到火災。
請幫助.. 謝謝..
你可以調用saveCell方法。該方法具有iRow
和iCol
作爲參數。要知道當前可編輯單元格的這些參數,您可以將afterEditCell添加到網格中。所以,你的iRow
和iCol
最後的值保存的jqGrid的變量外,你叫saveCell與這些參數上點擊事件中使用有內「保存更改」按鈕。
// This worked Perfectly fine for me, hope will work for you as well.
var selectedCellId;
var $gridTableObj = $('#jqGridTable');
$gridTableObj.jqGrid({
datatype : "jsonstring",
datastr : gridJSON,
height : ($(window).height() - 110),
width : ($(window).width() - 80),
gridview : true,
loadonce : false,
colNames : columnNames,
colModel : columnModel,
rowNum : gridJSON.length,
viewrecords : true,
subGrid : false,
autoheight : true,
autowidth : false,
shrinkToFit : true,
cellsubmit : 'clientArray',
cellEdit : true,
jsonReader : {
root : "rows",
repeatitems : false
},
onCellSelect : function(id, cellidx, cellvalue) { // use this event to capture edited cellID
selectedCellId = cellidx; // save the cellId to a variable
},
loadComplete : function(data) {
jQuery("tr.jqgrow:odd").addClass("oddRow");
jQuery("tr.jqgrow:even").addClass("evenRow");
}
});
//附加點擊事件jqgrid「saveCell」來保存單元格。
var gridCellWasClicked = false;
window.parent.document.body.onclick = saveEditedCell; // attach to parent window if any
document.body.onclick = saveEditedCell; // attach to current document.
function saveEditedCell(evt) {
var target = $(evt.target);
var isCellClicked = $gridTableObj.find(target).length; // check if click is inside jqgrid
if(gridCellWasClicked && !isCellClicked) // check if a valid click
{
var rowid = $gridTableObj.jqGrid('getGridParam', 'selrow');
$gridTableObj.jqGrid("saveCell", rowid, selectedCellId);
gridCellWasClicked = false;
}
if(isCellClicked){
gridCellWasClicked = true; // flat to check if there is a cell been edited.
}
};
感謝它的工作非常好... – Shivi 2010-09-30 12:58:34
好..我會記住..謝謝 – Shivi 2010-09-30 14:52:33