【问题标题】:Add complex markup with event handlers使用事件处理程序添加复杂标记
【发布时间】:2011-06-02 11:48:24
【问题描述】:

如何将字符串<span>text</span> 放入网格单元中,而不是放入带有事件处理程序的字符串? 这个选项不适合我:

<span onclick='function(){...}'>click me</span>

例如,我需要在一个网格单元格中添加这样的元素:

var $el1 = $('<button>clck me 1</button>').click(function(){...});
var $el2 = $('<button>clck me 2</button>').click(function(){...});
...

我使用 slick.dataview。

【问题讨论】:

  • 首先,您需要创建一个 Cell Formater 来转换 html 元素中的值。在这个元素中添加一个类属性。创建一个 onRenderCompleted 事件,在事件函数内部,你可以像 click 一样添加选择器处理程序。源码见[link]mleibman.github.com/SlickGrid/examples/example2-formatters.html

标签: slickgrid


【解决方案1】:

不要。 通过 SlickGrid 处理单击事件,方法是使用它公开的 onClick 事件,或者使用更高级别(容器或文档)的事件委托来捕获它。为按钮添加一个属性,以便稍后区分它们并决定执行哪个处理程序。

【讨论】:

  • 我同意。如果添加点击事件要小心,您必须考虑将来是否需要可编辑的单元格。可编辑的单元格只需单击一两次即可激活其功能,具体取决于配置
猜你喜欢
  • 2014-02-07
  • 2021-10-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多