setCellCssStyles 在应用循环索引后不起作用



在for.中使用setCellCssStyles循环中

能够使用 setCellCssStyles 为SlickGrid中的特定单元格着色,并具有行的显式索引号,例如:

        grid.setCellCssStyles("key_name", {
          0: {
              col_name: "css_class",
            },
          })

但是当切换到计数器时。在循环中它不起作用:

        grid.setCellCssStyles("key_name", {
          i: {
              col_name: "css_class",
            },
          })

尝试在 setCellCssStyles 之后重新渲染网格 (grid.render((( 有/没有 settimeout,typeOf(i( 是 Number

有什么想法吗?

谢谢 (:

这是因为

当您使用相同的哈希设置 css 样式时,您的"键名"是相同的。如果您使用相同的"键名"和不同的哈希,它会覆盖前一个,这就是为什么它在 for 循环中不起作用的原因。尝试将循环变量添加到"键名"中,看看它是否有效。

这是一个JavaScript问题,而不是slickgrid。这 { i: value }对象初始化器是显式初始化的方便简写,它实际上等同于{ "i": value }

请参阅:在 JavaScript 对象文本中使用变量作为键

你应该使用类似的东西

var temp = {};
for (var i = 0; i < 5; i++) {
  temp[i] = value;
}

还值得注意的是,对象键必须始终是文本,但在很多情况下,数字到文本的转换由 Javscript 处理。
如果你认为你正在初始化一个数组,你最好去阅读Javascript数组和对象之间的区别。

相关内容

  • 没有找到相关文章

最新更新