2013-05-21 6 views
0

При попытке нашего приложения Worklight в Firefox и Chrome мы заметили, что в Chrome событие onclick по элементу нашего EdgeToEdgeStoreList не работает. В Firefox onclick событие действительно работает.IBM Worklight 5.0.6 - Dojo «onclick» событие не работает в Chrome

require([ "dojo/store/Memory", 
     "dojox/mobile/EdgeToEdgeStoreList", "dojo/_base/array" ], function(Memory, 
     EdgeToEdgeStoreList, array) { 

var conferencesJson = []; 
for(var i = 0; i < conference.array.length; i++){ 
    var x = {"label" : conference.array[i].name, 
      "moveTo" : "dayOverview", 
      "onclick" : "test()" 
    }; 
    conferencesJson.push(x); 
} 

    var conferenceStore = new Memory({ 
     data : conferencesJson, 
     idProperty : "label" 
    }); 
    var conferenceList = new EdgeToEdgeStoreList({ 
     store : conferenceStore 
    }, "conferenceList"); 

    conferenceList.startup(); 
}); 

В нашем формате HTML у нас есть неупорядоченный список.

<ul id="conferenceList"></ul> 

Может кто-нибудь объяснить, почему это работает в Firefox и не работает в Chrome?

+0

Просто выстрел в темноте здесь. Проверьте свои конференции. Переменная json для правильного синтаксиса JSON. Дополнительная запятая в конце всегда запускает IE, но не Firefox. Не уверен в Chrome ... Также попробуйте добавить conferenceList.placeAt ("conferenceList"); непосредственно перед запуском(); – GoinOff

+2

Я нашел ответ на эту проблему. Я заменил этот фрагмент кода: var x = {"label": conference.array [i] .name, "moveTo": "dayOverview", "onclick": "test()" }; с: вар х = { "метка": conference.array [I] .name, "MoveTo": "dayOverview", "OnClick": тест- }; Я сделал несколько изменений в onClick: - столица C - тест без кавычек и скобок –

+0

стилистически Я делаю привычку использовать array.map, но onClick - это путь dijit. conferenceJson = array.map (conference.array, function (i) {return {label: i.name, moveTo: "dayOverview", onClick: test}); –

ответ

0

Как Гленн не добавляет ответ ... вот это:

Заменить этот кусок кода:
var x = {"label" : conference.array[i].name, "moveTo" : "dayOverview", "onclick" : "test()" };

С:
var x = {"label" : conference.array[i].name, "moveTo" : "dayOverview", "onClick" : test };.

Разница является столицей C в onClick.

Смежные вопросы