2013-05-02 70 views
1

我有一個jqgrid,內嵌編輯和幾個凍結列。我從here收集了一些關於如何完成這項工作的信息。鏈接中的答案有一個多列的凍結列。 但我想知道的是,如果有任何方法或解決方法來編輯內聯編輯中的凍結列。我們可以編輯jqgrid中的凍結列嗎?

回答

0

我一直在試圖找出這一個現在一小會兒,並最終能夠想出適合我的情況的東西。希望你能做類似的事情。

我創建的點擊編輯按鈕時要調用下面的函數:

var editRow = function(rowId) { 
    $('#' + gridId).editRow(rowId); 
    $('#' + gridId + '_frozen').editRow(rowId); 
}; 

這將使凍結的列出現編輯給用戶。

我創建的點擊保存按鈕時要調用的以下功能:

var saveRow = function(rowId) { 
    $('#' + gridId + '_frozen' + ' #' + rowId + ' > td').each(function() { 
     var col = $(this).attr('aria-describedby'); 
     $('#' + gridId + ' #' + rowId + ' > td[aria-describedby="' + col + '"]') 
       .children(':first') 
       .val($(this).children(':first').val()); 
    }); 
    $('#' + gridId).saveRow(rowId); 
}; 

該代碼會從冷凍單元格的值,並將其複製到底層隱藏細胞 - 這是保存時提交值的單元格。

我也有一個取消選項,它調用下面的方法:

var cancelRow = function(rowId) { 
    $('#' + gridId).restoreRow(rowId); 
    $('#' + gridId + '_frozen').restoreRow(rowId); 
}; 

UPDATE: 我發現,這種解決方案僅適用於IE(8),而不是在鉻或Firefox。我正在使用的Web應用程序只需要與IE8兼容,但我也會嘗試爲其他瀏覽器找到解決方案。

相關問題