2011-06-02 48 views
2

如何將網格單元格中的字符串不僅包含字符串<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。

+1

首先,您需要創建一個Cell Formater,它可以轉換html元素中的值。在這個元素中添加一個類屬性。在事件的函數內部創建一個onRenderCompleted事件,您可以添加像click這樣的選擇器處理程序。請參閱[鏈接]中的源代碼http://mleibman.github.com/SlickGrid/examples/example2-formatters.html – 2011-07-22 08:29:54

回答

4

不要。 通過使用它公開的onClick事件處理通過SlickGrid的點擊事件,或者在更高級別(容器或文檔)上使用事件委託來捕獲它。向這些按鈕添加一個屬性,以便稍後區分它們並決定執行哪個處理程序。

+1

我同意。如果添加點擊事件,請小心,如果將來需要可編輯單元格,則必須考慮。可編輯的單元格通過一次或兩次單擊來激活其功能,具體取決於配置 – 2011-07-22 08:35:28