0
在Firefox和Chrome瀏覽器中嘗試使用我們的Worklight應用程序時,我們注意到在Chrome瀏覽器上,我們的EdgeToEdgeStoreList
項目上的onclick
事件不起作用。 在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中不起作用嗎?
只是在黑暗中拍攝這裏..檢查您的會議JSON變量適當的JSON語法。在最後一個額外的逗號總是絆倒IE瀏覽器,但不是Firefox ..不知道關於Chrome ...另外,嘗試添加conferenceList.placeAt(「conferenceList」); (); – GoinOff
我找到了這個問題的答案。 我替換了這段代碼: var x = {「label」:conference.array [i] .name, 「moveTo」:「dayOverview」, 「onclick」:「test()」 }; 與: var x = {「label」:conference.array [i] .name, 「moveTo」:「dayOverview」, 「onClick」:test }; 我對onClick進行了少許更改 - 大寫C - 無引號和括號的測試 –
我習慣於使用array.map,但onClick是dijit方式。 meetingJson = array.map(conference.array,function(i){return {label:i.name,moveTo:「dayOverview」,onClick:test}); –