2012-11-13 86 views
2

我在javascript中創建一個元素,給它一個ID,然後通過jQuery訪問它。我認爲這將是很簡單,但由於某種原因,這是行不通的:設置元素的ID

var img = document.createElement('img'); 
    img.id = "uploadedimg"; 
    if($('#uploadedimg').length==0) 
      alert("it's not there"); 
     else 
      alert("it is there!"); 

我得到的警告是「它不存在」。我知道如何在jQuery中創建一個元素,但我想知道這段代碼有什麼問題。

回答

5

在使用jQuery在DOM中查找元素之前,您必須追加元素。

使用appendChild方法來做到這一點。例如:

document.body.appendChild(img); 

然後,用jQuery訪問它。

另一種方法是直接將元素轉換爲jQuery對象,如下所示:$(img)。之後,你可以使用jQuery常用的方法。

+2

+1將它追加到DOM,或者在沒有在DOM('$(img)')中查找它的情況下選擇它可能是正確的選擇,具體取決於所需的效果。 –

+0

@DavidHedlund好點。 –