2012-05-01 6 views
0

が、私はdojo.query 私のコードのようにある使用して、クラスのすべての要素を取得したいすべての要素を取得し、トラブルに直面しています私のQuestionに関連するクラス名によって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の配列を返します。それは単なる文字列

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

あなたの質問内の変数resultsは次のようにテキストを単なる文字列です。これはDOM要素の配列ではなく、新しい要素をページDOM自体に追加していないため、dojoDndItemクラスを持つ既存の要素がない限り、空の配列[]が正しい結果になります。

+0

この問題についていくつか提案された解決方法で説明できますか? – AbdulAziz

+0

解決策*何*? 'results'のHTMLをページに追加しますか?ページに結合されていないDOM要素の配列を作成したいですか? – Hamish

関連する問題