2010-10-19 69 views
2

元素我有一個div:發現使用jQuery

<div id="div"></div> 

$("#div").append("<div id='c'></div>") 
$("#c").length 

返回0。我能做些什麼爲找到插入DIV #div後的DIV寬度ID = C?

感謝

回答

2

它確實爲我工作:http://jsfiddle.net/4Q4cM/

也許#div元素ISN」附加到DOM樹本身?例如,你正在做$('<div id="div"></div>')而不是將其插入到文檔中。 尼克Craver也有一個很好的猜測。

-2
$("#div #c") 

會發現你在找什麼

+0

你應該**非常少使用這樣的選擇器,ID選擇器幾乎在每種情況下都只應該是'#id'。在這種情況下,這不是問題。 – 2010-10-19 21:42:57

1

嘗試這樣做:

$('div').append($('<div>').attr('id', 'c')) 
1

你有什麼,只要你在一個document.ready處理器運行它,像這樣將工作:

$(function() { 
    $("#div").append("<div id='c'></div>") 
    alert($("#c").length); //alerts 1 
}); 

You can test it here,沒有.ready包裝,如果在運行前<div id="div"></div>在DOM被加載, #div選擇器不會找到任何內容,因此它不會將任何內容附加到找到的0元素。

-1

首先,他的div將不會有寬度,直到它包含一些內容。試試看。

+1

我認爲你誤解了'length()'屬性(在這種情況下,'length'基本上是選擇器找到的元素的數量),而你*似乎*將它與'width'混淆。 – 2010-10-19 22:41:16

+0

哎呀。我確實想念那個,對不起。 – fish2000 2010-10-19 23:06:43