我正在尝试将我的 onClick 侦听器注册到dijit Button ,该按钮放置为带有 GridX的单元内小部件。基于示例,我已经完成了以下操作test_grid_cellWidget
:
{ field: "save", name:"Save",
widgetsInCell: true,
navigable: true,
decorator: function(){
//Generate cell widget template string
return '<button data-dojo-type="dijit.form.Button" data-dojo-attach-point="btn">Save</button>'
},
setCellValue: function(data){
//"this" is the cell widget
this.btn.set("label", "Speichern")
this.btn.connect("onClick", function(){
alert('clicked')
})
}
},
setCellValue
执行成功,标签改变。但是,当我单击按钮时,onClick 侦听器未注册且未调用。当我使用它的语法data-dojo-props="onClick:function"
时,它需要将侦听器函数声明为全局,这是我想避免的。
无论如何,我有 Button 对象,并且我正在执行 dijit 文档中的代码,所以它应该可以工作。但是为什么在这种情况下什么都没有注册呢?