0

私はxmlを持っています-

<item name="a">
   <item name="d">
      <item name="g">
          ...
      </item>
      ...
   </item>
   <item name="e"></item>
   <item name="f"></item>
   ...
</item>
<item name="b"></item>
<item name="c"></item>

このxmlのulliツリー構造を次のように作成したい

a [node]
 d [node]
  g [node]
  .
  .
  .
 e [node]
 f [node]
 .
 .
b [node]
c [node]

無限ループを作る必要があると思いますが、jquery でそれを行うのは難しいと思います。私のjqueryは次のようになります-

function createNestedTree(obj) {
  $("#tree").append("<ul></ul>");
  $(obj).children("item").each(function(){
    $("#tree ul").append("<li>"+$(this).attr("name")+"</li><ul id="+$(this).attr("name")+"level></ul>");
    $(this).children("item").each(function(){
       //logic here
    });
  });
}

どんな助けでも大歓迎です。

4

1 に答える 1

1

これはあなたのために働きますか?

 function jumpdown (obj) {
   if (obj.hasChildNodes()) {
     var nextlevel = "<li>"+$(obj).attr("name")+"</li><ul id='"+$(obj).attr("name")+"level'>";
     for (var i=0 ; i<obj.chilNodes.length, i++)
     {
       nextlevel = nextlevel + jumpdown(obj.chilNodes[i]);
     }
     nextlevel = nextlevel + "</ul>";
     return nextlevel;
   }
   else return "<li>"+$(obj).attr("name")+"</li>";
 }

 jumpdown(mydocumentxml);
于 2012-07-10T10:34:40.297 に答える