如何在jqgrid中按行数据(而不是按所选行)获取行ID

如何在jqgrid中按行数据(而不是按所选行)获取行ID,jqgrid,Jqgrid,我想通过jqGrid中单元格的内容(而不是所选行)获取行id 通过PRODUCTID,我可以获得行id e、 g.对于PRODUCTID是ABCD,我可以得到2 列PRODUCTID是唯一的 请给我一些建议 非常感谢 我的代码示例: $("#project_jqGrid").jqGrid({ url: 'project/projectQuery.php', mtype: "POST", datatype: "json", page: 1, colMode

我想通过jqGrid中单元格的内容(而不是所选行)获取行id

通过
PRODUCTID
,我可以获得行id

e、 g.对于
PRODUCTID
ABCD
,我可以得到2

PRODUCTID
是唯一的

请给我一些建议

非常感谢

我的代码示例:

$("#project_jqGrid").jqGrid({
    url: 'project/projectQuery.php',
    mtype: "POST",
    datatype: "json",
    page: 1,
    colModel: [
        {   label : "PRODUCTLINE",
            //sorttype: 'integer',
            name: 'PRODUCTLINE', 
            //key: true, 
            width: 100,
            editable:true,
            editoptions:{readonly:'readonly'}
        },
        {   label : "GPOWNER",
            //sorttype: 'integer',
            name: 'GPOWNER', 
            //key: true, 
            width: 150,
            editable:true,
            editoptions:{readonly:'readonly'}
        },
        {   label : "PRODUCTID",
            //sorttype: 'integer',
            name: 'PRODUCTID', 
            key: true, 
            width: 100,
            editable:true,
            editoptions:{readonly:'readonly'}
        },
    ],
    loadComplete: function() {

        $.ajax({
           dataType: 'json',
           url : "project/projectDifferQuery.php", // your php file
           type : "GET", // type of the HTTP request
           success : function(data){

              // I can get PRODUCTID from mysql database
              // I want to get rowid to change cells color by PRODUCTID
              // ........

              // Change Cells Color(I need to get '5' by position of PRODUCTID)
              //$('#project_jqGrid').jqGrid('setCell',5,"GPOWNER","",{'background-color':'#FF4545'});

           }
        });

    },
    loadonce: true,
    viewrecords: true,
    width: 'auto',
    height: 'auto',
    rowNum: 20,
    pager: "#project_jqGridPager"//,

});

>版本:-jqGrid 5.1.1

理解您想要得到什么并不困难-我想您指的是rowIndex,所以这里有一些方法可以帮助您

方法

getGridRowById(字符串rowid)

将id=rowid的行作为文档对象返回

getInd(字符串rowid,[boolean rowcontent])

返回由grid row-rowid指定的网格表中行的索引。如果rowcontent设置为true,则返回row文档对象

如果将行作为文档对象,则可以获取索引和id。假设rowdata是文档行,则

rowdata。rowIndex是索引


rowdata.id是id

要理解您想要得到什么并不难-我想您指的是rowdanex,所以这里有一些方法可以帮助您

方法

getGridRowById(字符串rowid)

将id=rowid的行作为文档对象返回

getInd(字符串rowid,[boolean rowcontent])

返回由grid row-rowid指定的网格表中行的索引。如果rowcontent设置为true,则返回row文档对象

如果将行作为文档对象,则可以获取索引和id。假设rowdata是文档行,则

rowdata。rowIndex是索引


rowdata.id是id

ProductID
是唯一的,并且网格包含
ProductID
作为
colModel
中的列名,建议在列定义中添加
key:true
。它强制jqGrid使用
ProductID
中的值作为rowid


了解jqGrid的代码需要为jqGrid的每一行(
元素)设置唯一的
id
属性,这一点很重要。看见因此,jqGrid的输入数据必须包含rowid信息。jqGrid的输入数据有多种可选格式。最常见的方式是,输入数据应该包含
id
属性。如果您的输入数据使用
ProductID
作为行的唯一id,那么您可以添加选项
jsonReader:{id:“ProductID”}
来通知jqGrid。如果您不需要将
ProductID
作为
colModel
中的列,则
ProductID
是唯一的,并且网格包含
ProductID
作为
colModel
中的列名,那么建议将
key:true
添加到列定义中。它强制jqGrid使用
ProductID
中的值作为rowid


了解jqGrid的代码需要为jqGrid的每一行(
元素)设置唯一的
id
属性,这一点很重要。看见因此,jqGrid的输入数据必须包含rowid信息。jqGrid的输入数据有多种可选格式。最常见的方式是,输入数据应该包含
id
属性。如果您的输入数据使用
ProductID
作为行的唯一id,那么您可以添加选项
jsonReader:{id:“ProductID”}
来通知jqGrid。在这种情况下,您不需要将
ProductID
作为列包含在
colModel

中,谢谢。我有RowData,但我不知道RowID。因为我想更改单元格颜色,所以必须通过RowData获取RowID。你能给我一些建议吗。谢谢。什么是rowData-javaScript对象(数组)或文档对象。如果是document对象,则id为RowData.id;如果是JavaScript对象,则您应该知道哪个字段是id,则id为RowData.ProductID或RowData['ProductID']对不起。。。我的解释不清楚。我的意思是行数据是单元格的内容。请参考“示例图片”。我的意思是行数据是“ABCD”。现在,我知道“ABCD”,但我想知道它的行id(在本例中,行id为2)。若单元格内容为“TEST123”,则行id为1。如何获得该值“ABCD”?从何处获得的wich方法或事件?。我可以向您推荐一种使用getCol方法的方法,但我相信,如果您向我解释从何处获得该方法,我会从mysql数据库中获得值,那么使用getCol方法会更容易。我根据数据库的值决定要更改哪个单元格的颜色。谢谢Tony。我有RowData,但我不知道RowID。因为我想更改单元格颜色,所以必须通过RowData获取RowID。你能给我一些建议吗。谢谢。什么是rowData-javaScript对象(数组)或文档对象。如果是document对象,则id为RowData.id;如果是JavaScript对象,则您应该知道哪个字段是id,则id为RowData.ProductID或RowData['ProductID']对不起。。。我的解释不清楚。我的意思是行数据是单元格的内容。请参考“示例图片”。我的意思是行数据是“ABCD”。现在,我知道“ABCD”,但我想知道它的行id(在本例中,行id为2)。若单元格内容为“TEST123”,则行id为1。如何获得该值“ABCD”?从何处获得的wich方法或事件?。我可以向您推荐一种使用getCol方法的方法,但我相信,如果您向我解释从何处获得该方法,我会从mysql数据库中获得值,那么使用getCol方法会更容易。我根据数据库的值决定要更改哪个单元格的颜色。谢谢Oleg。但我不知道你的意思。你能给我一些建议吗?谢谢。@Leo:不客气!您应该使用JavaScript代码附加问题文本,您可以使用JavaScript代码创建jqGrid和JSON数据示例。JavaScript代码应该包含
colModel
pa