1. ホーム
  2. javascript

[解決済み] jqGrid gridComplete:- getRowData - 配列から行セルの値を取得する

2022-02-14 20:19:46

質問

<ブロッククオート

お願い - jqGrid getRowDataから変数を設定するための構文が必要です。 プロパティ

行をループする - ID と Phrase 列の値を変数に取り込むだけでよい。

gridComplete: function () {
  var allRowsInGrid = $('#list').jqGrid('getRowData');
  for (i = 0; i < allRowsInGrid.length; i++) {
    pid = allRowsInGrid[i].ID;
    vPhrase = allRowsInGrid[i].Phrase;
    vHref = "<a href='#' onclick='openForm(" + pid + ", " + vPhrase + ")'>View</a>";
  }
},

getDataIDsで簡単にIDを取得することができました:-)

pid と vPhrase for i の特定のカラム値を取得する手助けが必要です。

乾杯

解決方法は?

これを試してみてください。

var ids = jQuery("#list").jqGrid('getDataIDs');
for (var i = 0; i < ids.length; i++) 
{
    var rowId = ids[i];
    var rowData = jQuery('#list').jqGrid ('getRowData', rowId);

    console.log(rowData.Phrase);
    console.log(rowId);
}

注意:もし、javascriptのメソッドを呼び出すリンクをセルに追加することが目的であれば、次のようにして実現できます。 formatter 以下のように、名前、インデックス、幅、位置などの他の列のプロパティを追加するのと同様に、フォーマッタを colModel に追加する必要があります。

formatter: function(cellvalue, options, rowObject) {

    return  "<a href='#' onclick='openForm(" 
            + rowObject.ID + ", " 
            + rowObject.Phrase 
            + ")'>View</a>"; 
      }