0

ListItemDojo モバイル アプリケーションで がクリックされたときに関数を呼び出そうとしています。

これは、プログラムで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。どちらの方法も機能しません。clickonClick、のさまざまなバリエーションも試しましたonclick

この問題に関して私が見た他の投稿は、dojo.connect上記の方法を使用することを提案していますが、それでも私にとってはうまくいきません.

助言がありますか?

4

1 に答える 1

2

これは、ウィジェットの startup() メソッドが呼び出されないためです。li.startup() を明示的に呼び出す必要があります。または、参照ノードを作成して ListItem コンストラクターに渡す代わりに、this.searchList.addChild(li) を使用することもできます (これにより、startup() も適切に呼び出されます)。 .

于 2013-04-05T11:29:21.523 に答える