如何从自定义格式化程序中访问单元格对象?

时间:2013-08-16 09:05:33

标签: jquery jqgrid formatter

我需要从客户格式化程序中获取单元格对象(单元格值)。

我想要做的是将我的一个超级鱼菜单放在单元格旁边,这样我就需要从jQuery访问单元格。

目前我从格式化程序中派生了索引列和列索引,但我需要从Jquery访问当前单元格。

在对生成的代码进行进一步分析后,似乎没有为jqGrid中的表格单元设置id。

我觉得我应该能够使用RowObject参数执行此操作,但到目前为止我的所有努力都失败了。

以下是我的简化代码:

function ViewColumnFormatter(cellvalue, options, rowObject) {
    if (cellvalue == undefined || cellvalue == "")
        return "";

    if (options.colModel.commandCount > 1) {
        // Here, I need to access the cellObject...
        // I know about options.rowId and options.pos
        // What I need is to access the cell "object"
    }
}

如何从自定义格式化程序中访问单元格对象

1 个答案:

答案 0 :(得分:0)

您可以使用自定义格式化程序注入任何HTML。

如果将自定义格式化程序与xml数据类型一起使用,则rowObject参数将是对象表示XML输入的相应行的DOM元素。 rowObject的类型是IXMLDOMElement。要查找与“myColumn”列对应的相应子元素的包含,您可以使用例如

$(rowObject).find('myColumn')

如果你使用loadonce:true jqGrid参数,那么在第一次加载时,rowObject参数将是DOM元素,稍后将作为命名的JavaScript对象,你需要的数据将被访问为rowObject.myColumn

请参阅Question