dojox.mobile.ListItem OnClick не работает

Я пытаюсь вызвать функцию при нажатии 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, прокомментированный выше, но это все еще не работает для меня.

Какие-либо предложения?


person Brian    schedule 04.04.2013    source источник
comment
браузер ПК показывает такое же поведение?   -  person Lucian Depold    schedule 05.04.2013
comment
Какая версия додзё?   -  person Paul Grime    schedule 05.04.2013
comment
@LucianDepold - сейчас я тестирую это в Chrome на своем компьютере.   -  person Brian    schedule 05.04.2013
comment
@PaulGrime - я использую dojo 1.8 через ESRI Javascript API версии 3.4.   -  person Brian    schedule 05.04.2013


Ответы (1)


Это связано с тем, что метод startup() вашего виджета никогда не вызывается. Вы должны либо вызвать li.startup() явно, либо вместо создания и передачи ссылочного узла конструктору ListItem вы можете использовать this.searchList.addChild(li) (это также приведет к правильному вызову startup()) .

person edurocher    schedule 05.04.2013
comment
Я попробовал метод запуска, и он все еще не работал. Однако, когда я изменил его на использование this.searchList.addChild(li), это сработало. Спасибо за вашу помощь. Тот поставил меня в тупик. - person Brian; 05.04.2013