2012-05-01 44 views
0

與我的Question相關,我正在面臨遇到麻煩得到所有元素我想要使用dojo.query 我想要的代碼是下面;Dojo.Query問題:通過類名獲得使用`dojo.query`的類的元素

var jsonRoles = {"roles": [ 
          {"roleId": "1", "roleName": "role1", "roleDesc": "This is role1"}, 
          {"roleId": "2", "roleName": "role2", "roleDesc": "This is role2"}, 
          {"roleId": "3", "roleName": "role3", "roleDesc": "This is role3"} 
         ] 
        }; 
        var results=""; 
        for(var i=0;i<jsonRoles.roles.length;i++){ 
         results += '<div class="dojoDndItem ">' + '<span style="visibility: hidden">' + jsonRoles.roles[i].roleId + '</span>' + jsonRoles.roles[i].roleName + '</div>'; 
        } 
        var list = dojo.query(".dojoDndItem"); 

我想存儲與類名dojoDndItem元素變量「名單」但是當我在螢火檢查「名單」,它給了我「[]」(空數組)。難道我做錯了什麼?

+0

你期望發生什麼? – Hamish

回答

0

dojo.query從基於CSS選擇器的頁面返回匹配DOM nodes的數組。

變量在你的問題results僅僅是一個像文本字符串:

<div class="dojoDndItem"><span style="visibility: hidden">... 

只是一個字符串。它不是一個DOM元素數組,也沒有向頁面DOM本身添加任何新元素,所以除非dojoDndItem類具有預先存在的元素,否則空數組[]是正確的結果。

+0

您能解釋一些針對此問題的建議解決方案嗎? – AbdulAziz

+0

解決方案* *什麼*?你想在結果中添加HTML到頁面嗎?您是否想創建一個未連接到頁面的DOM元素數組?' – Hamish

相關問題