2013-03-18 209 views
0

我遇到問題使用jQuery創建一個新的<div>標記。動態Div創建問題

我的要求是:

  1. 創建div標籤和它的ID動態
  2. 提供的<div> & </div>之間的內容動態
下面

是代碼片段我想

for (var i in List){ 
$('#count').append('<div id="content_'+i+'">') 
.append(List[i]).append('</div>').append('<br />'); 
} 

這裏列出對象以鍵值對

輸出 -

<div id="count" align="left"> 
<div id="content_4504"></div>Steve <br> 
<div id="content_2024"></div>Richard <br> 
</div> 

什麼,我需要顯示的標籤中的名稱。

+0

我們可以看到你的整個代碼嗎?也許以jsfiddle的形式? – Bernie 2013-03-18 19:11:57

回答

1

另一種方法是動態生成HTML,嘗試這樣的事情,而不是:

for (var i in List){ 
$('#count').append('<div id="content_' + i + '">' + List[i] + '</div><br/>') 
} 
+2

除了您將覆蓋每個循環的內容... – Josh 2013-03-18 19:15:15

+0

如果您需要清除#count的內容,請添加$('#count')。在for循環之前。 – Learner 2013-03-18 19:15:43

+0

非常感謝你Mihir ..!有用........! – user2104391 2013-03-18 19:16:56

1

這是因爲,要附加字符串到#count元素不是您創建和附加它的元素:

for (var i in List){ 
    $('<div id="content_'+i+'">') 
       .text(List[i]) 
       .appendTo('#count') 
       .after('<br/>'); 
} 
0

試試這個

for (var i in List){ 
    var divContent=$('<div />').attr({id:"content_"+i}).html(List[i]); 
    $('#count').append(divContent,'<br>'); 
    ; 
} 
0
for (var i in List) 
{ 
    var $dyn = $("<div></div>").attr({'id':'content_'+i}).text(List[i]); 
    $('#count').append($dyn).append('<br>'); 
} 

這應該這樣做。