单击超链接获取jqgrid行

时间:2011-10-22 18:12:13

标签: jqgrid

我在Jqgrid面临问题。我有一个带超链接的列,点击该超链接我想要行数据。这可能是使用Jqgrid。当我使用“getGridParam”时,我得到的行id为null。

3 个答案:

答案 0 :(得分:1)

您可以尝试两种方式:

1)你可以使用custom formatter来创建超链接,并在你放入rowid的链接上有一个自定义属性(在自定义属性名称前加上'data-'以保持html5兼容) 。或者,您可以调用显式传递行ID的javascript函数。

2)尝试使用onCellSelect event of jqGrid来获取被点击的单元格的行和列ID,而不是超链接的事件本身,即使它是超链接。但即使用户点击单元格内的任何地方,这也会触发事件,而不仅仅是链接!。

答案 1 :(得分:1)

我确定你现在已经找到了答案,但对于你们这些使用ASP.NET WebForm的人来说就是我用过的。

创建自定义格式化程序并将其添加到要显示链接的列: 我的列来自数据库,我使用Select语句:

switch (jqGrdCol.DataField)
{
  case "xxx":
     CustomFormatter hypLinkxxx = new CustomFormatter();
     hypLinkxxx.FormatFunction = "xxxformatOperations"; --> **JavaScript Function**
     jqGrdCol.Formatter.Add(hypLinkxxx);
  break;
}

然后在Javascript函数中:

function xxxformatOperations(cellvalue, options, rowObject) {
    return "<a href=somefile.aspx?xxx=" + rowObject[0] >" + cellvalue + "</font></a>"
}

我将列的值作为超链接。

答案 2 :(得分:1)

我有一个类似的问题,并且确实在研究你的问题以找出解决方案,我找到了解决方案。

解决方案是使用onCellSelect: function(rowid, index, contents, event)

这给出了rowid和内容,即您单击或选择的单元格的内容 因此,您可以获得包含超链接的整行内容