【发布时间】:2011-07-19 12:31:44
【问题描述】:
我在 myJSP.jsp 上有一组 dijit.form.CheckBoxe。
在我的 dojo 类 myClass.js 中,我尝试抓住这些复选框并将它们中的每一个连接到一个应该在“onClick”事件上调用的函数:
(dijit.registry.byClass("dijit.form.CheckBox")).forEach(function(checkBox){
dojo.connect(checkBox,"onClick",this,this.checkboxClicked);
});
当我单击任何复选框时,我会收到以下消息:“lls[i].apply 不是函数”。
为什么我不能使用 dojo.connect?
顺便说一句 - 我使用 IBM Websphere Portal 6.1.5 的 dojo 版本,即 1.3.2。
【问题讨论】:
-
不知道,应该可以。但是1.3已经很老了。您可能想要升级到最新的 1.6.1。此外,您应该能够
checkBox.connect("onClick", this, this.checkboxClicked)以获得更简洁的代码。 -
恐怕无法升级。至于
checkBox.connect- 它没有影响,我的意思是:由于某种原因,它没有将函数this.checkboxClicked连接到我的复选框,因此当我按下它们时,不会调用该函数。 -
糟糕。我想我错过了这个。我依稀记得 Dojo 复选框会捕获 onClick 事件以进行内部处理。您可能必须改用“onChange”事件。检查文档。
标签: dojo dijit.form