0
onSelectRow: function (id) {
    var row = jQuery('#list').jqGrid('getRowData', lastSel)

    ...
    lastSel = id;
},

[Docu]: http://www.trirand.com/jqgridwiki/doku.php?id=wiki:methodsで指定されているため、実際の値は得られません。代わりに何を使用できますか? 最終的に変更されたデータは送信されません。

4

2 に答える 2

1

投稿したコードが少なすぎます。したがって、インライン編集をどのように実装したかは不明です。いずれにせよ、対応するHTMLコントロールの値として編集セルの値があります。通常<input>または<select>編集に使用します。したがって、値を取得するには、対応するHTML要素を見つけて、その値を直接取得する必要があります。たとえば、

$("#" + rowid + ">td:nth-child(" + (i + 1) + ")>input").val()

i番目の列またはidが。に等しい行のセルの入力から値を取得しますrowid

古い答えは、同じことをするためのもう少し別の方法を示しています。いずれにせよ、対応するセルの値を直接取得する必要があります。

于 2012-10-16T16:43:29.453 に答える
0
function getTextFromCell(cellNode) {
    return cellNode.childNodes[0].nodeName === "INPUT" ?
        cellNode.childNodes[0].value :
        cellNode.textContent || cellNode.innerText;
}

;

function getActualRowData(rowid) {
    var row = [];
    $('#' + rowid).find('td').each(function () {
       row.push(getTextFromCell(this));
    });
    return row;
}
于 2012-10-17T07:59:37.807 に答える