2014-09-05 80 views
-1

我有一個JSON對象,我遍歷和工作的正確jQuery的追加問題

iGenerateChilds = function (obj, div, $new) { 
      var $new = $(); 
       $.each(obj.objects, function (p, par) { 
        $(div).append(iGenerateObject(par, "")); 
        alert(par.objects.length); 
        if (par.objects.length != 0) { 
         iGenerateChilds(par, div, $new); 
        } 
       }); 
      return div; 
     }; 

有了這個,我想辦法的對象越來越相互連接,它現在確實,但是錯誤的,可以沒有辦法弄清楚如何做到這一點是正確的。

目前,它產生

<table></table><tr></tr><td></td><td></td> 

,我想

<table><tr><td></td><td></td></tr></table> 

有人對這個問題的解決?

+0

我們可能有一個樣品JSON? – blex 2014-09-05 18:05:20

+3

您正在追加到div,而不是表。 – 2014-09-05 18:05:41

回答

1

試試這個:

iGenerateChilds = function (obj, div) { 
       $.each(obj.objects, function (p, par) { 
        var genObj = iGenerateObject(par, ""); 
        $(div).append(genObj); 
        alert(par.objects.length); 
        if (par.objects.length != 0) { 
         // add the children to the newly added genObj-element 
         iGenerateChilds(par, genObj); 
        } 
       }); 
      return div; 
     }; 
+0

工作像陽光))))應停止工作,每天12小時),thx! – user3763117 2014-09-05 18:13:50

+0

爲什麼downvoting? – friedi 2014-09-05 18:14:51

+0

我試圖upvote,但不知何故它downvoted,不知道爲什麼...... – user3763117 2014-09-05 18:15:15

-1

如果你可以發佈更多的信息,比如你的HTML結構和你的JSON對象,那會很有幫助。

但乍一看,我會說你是在一個水平太高的附加元素。有了這條線$(div).append(iGenerateObject(par, ""));它看起來像你將它附加到包裹你的表的元素,對嗎?它需要附加到通過元素中的<table>