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

标签 jquery jqgrid formatter

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

我想做的是将我的 superfish 菜单之一放在单元格旁边,这样我就需要从 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"
    }
}

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

最佳答案

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

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

$(rowObject).find('myColumn')

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

参见Question

关于jquery - 如何从自定义格式化程序中访问单元格对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18269664/

相关文章:

jquery - 在 jQuery 单击事件中将伪元素移动到另一个

javascript - 将 Rails 表单 POST 数据传递给 JS 点击事件

jquery - 使用 jquery.BlockUI 插件禁用整个 jqGrid(jQuery 网格插件)

javascript - 了解 JQGrid 列宽行为

Java Formatter 指定文本的起始位置

Jquery JSON append <li>无法获取长度

javascript - 检查选择的标签是否具有相同的值

javascript - jqGrid onCellSelect 从本地数据返回属性

c++ - 重新格式化 C++ 代码?

java - 此代码不断格式化文件而不是写入文件。我如何解决它?