我正在forEach
循环制作按钮,但是当我尝试为onClick
按钮的标签创建一个函数时,它说this.foo()
这不是一个函数。代码如下:
dojo.forEach(buttonIds, function(btn, i) {
var button = new dijit.form.Button({
id: buttonIds[i]+'.'+widgetId,
label: buttonLabel[i],
onClick: function () {
dojo.hitch(this, this.foo());}
});
现在也许dojo.connect()
在这里更合适,但我不知道如何将按钮 ID 作为第一个参数,因为如果我理解正确,那么 connect 看起来像dojo.connect(button.id, 'onClick', this, foo())
. 不幸的是,此语句也会导致相同的错误。这可能是一个微不足道的范围问题,但我是 dojo 的新手,所以任何帮助都将不胜感激!
编辑:对不起,dojo.connect()
错误是button is undefined