8

请 - 需要从 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 的特定列值方面需要帮助

干杯

4

2 回答 2

21

试试这个:

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>"; 
      }
于 2013-03-08T02:14:39.017 回答
4

当我想通过RowID特定的Cell.

var selRow = jQuery("#list10").jqGrid('getGridParam','selarrrow');  //get selected rows
for(var i=0;i<selRow.length;i++)  //iterate through array of selected rows
{
    var ret = jQuery("#list10").jqGrid('getRowData',selRow[i]);   //get the selected row
    name = ret.NAME;  //get the data from selected row by column name
    add = ret.ADDRESS;
    cno = ret.CONTACTNUMBER
    alert(selRow[i] +' : ' + name +' : ' + add +' : ' + cno);
}
于 2013-03-08T06:02:38.467 回答