2014-10-08 65 views
0

我有一個內部有dgrid的自定義小部件,並希望在單擊單元格時獲取單元格值。下面有我的插件代碼的摘錄:從自定義小部件內部的dgrid獲取單元格值onclick

... 
postCreate: function() { 
... 
grid.on(".field-Ticket:click", lang.hitch(grid, this.markTicket)); 

}, 
markTicket: function() { 
//how can I get value of the cell that was clicked? 
} 

感謝

回答

0

退房在dgrid文檔Working with Events。點擊事件處理程序獲取一個常規的點擊事件,但dgrid有一個cell()方法,根據事件對象爲您提供單擊的單元對象。

從這一點,你可以得到列,行等:

markTicket: function (clickEvent) { 
    var cell = grid.cell(clickEvent); 
    alert("You clicked " + cell.row.data.Ticket); 
} 
+0

謝謝,我想我遇到的問題是通過從postCreate功能的單擊事件到markTicket功能。我試圖使用下面的代碼,但它不工作: grid.on(「。field-Ticket:click」,lang.hitch(grid,this.markTicket(evt))); – pvitt 2014-10-09 15:00:39

+0

沒關係,我看到你的解決方案現在 - 我不會將事件傳遞給postcreate上的函數,當我做順利時 謝謝 – pvitt 2014-10-09 15:16:35

+0

@pvitt你可以使用hitch,但是當然你必須做'grid.on 「.field-Ticket:click」,lang.hitch(grid,this.markTicket));'。請記住,調用函數:'someFunction()'與函數引用不同:'someFunction'。當你在函數名後面加括號時,你實際上執行它。 – Frode 2014-10-09 17:10:22

相關問題