如何在编辑时获取jqGrid单元格值

rao*_*ouf 31 cell jqgrid

如何在内联编辑时获取jqGrid单元格值(getcell和getRowData返回单元格内容而不是输入元素的实际值).

Paw*_*wel 17

获取给定行id和单元ID的单元格值的常规函数

在你的js代码函数中创建:

function getCellValue(rowId, cellId) {
    var cell = jQuery('#' + rowId + '_' + cellId);        
    var val = cell.val();
    return val;
}
Run Code Online (Sandbox Code Playgroud)

使用示例:

var clientId = getCellValue(15, 'clientId');
Run Code Online (Sandbox Code Playgroud)

狡猾,但工作.


rao*_*ouf 15

以下是具有用户功能的基本解决方案的示例.

    ondblClickRow: function(rowid) {
        var cont = $('#grid').getCell(rowid, 'MyCol');
        var val = getCellValue(cont);
    }
Run Code Online (Sandbox Code Playgroud)

...

function getCellValue(content) {
    var k1 = content.indexOf(' value=', 0);
    var k2 = content.indexOf(' name=', k1);
    var val = '';
    if (k1 > 0) {
        val = content.substr(k1 + 7, k2 - k1 - 6);
    }
    return val;
}
Run Code Online (Sandbox Code Playgroud)


小智 6

经过几个小时的哀悼,我发现这是最简单的解决方案.在获取行数据之前调用它:

$('#yourgrid').jqGrid("editCell", 0, 0, false);
Run Code Online (Sandbox Code Playgroud)

它将保存任何当前编辑,如果网格中没有行,则不会抛出.


tva*_*son -2

您可以使用 getCol 以数组形式获取列值,然后按您感兴趣的行对其进行索引。

var col = $('#grid').jqGrid('getCol', 'Sales', false);

var val = col[row];
Run Code Online (Sandbox Code Playgroud)