我想在dojo移动应用程序中点击ListItem
时调用函数。
这是以编程方式创建ListItems
showResults : function(results) {
results.forEach(function(result) {
var li = new dojox.mobile.ListItem({
class : "linklist",
href : "#",
label : result.address,
moveTo : "#",
clickable : true,
onClick : function() {
console.log("click");
}
}, domConstruct.create("li", null, this.searchList));
// dojo.connect(li, "click", lang.hitch(this, this.addResult, result))
}, this);
}
我尝试在构造函数中提供带有onClick
属性的函数,并在创建后使用dojo.connect
。两种方式都不奏效。我还尝试了click
,onClick
和onclick
的不同变体。
我见过的有关此问题的任何其他帖子都建议使用上面评论过的dojo.connect
方法,但这对我来说仍然不起作用。
有什么建议吗?
答案 0 :(得分:2)
这是因为从未调用过widget的startup()方法。您必须显式调用li.startup(),或者,不是创建引用节点并将其传递给ListItem构造函数,而是可以使用this.searchList.addChild(li)(这也将导致正确调用startup())