2011-12-09 32 views
0

後後動態生成輸入元素。 UPDATE:的document.getElementById返回null我使用<a href="http://api.prototypejs.org" rel="nofollow noreferrer">prototype.js</a></p> <p>動態生成HTML元素

enter image description here

+0

在調用document.getElementById或$(Id)時,該組件是否存在於頁面源中? –

+0

創建一個[jsfiddle](http://www.jsfiddle.net)來解釋你的問題..沒有人不能幫助這塊代碼。 –

+0

您的元素已經附加到DOM,或者您只是將它歸檔到var?如果您將其附加到DOM,您是否在文檔中搜索ID之前堅持元素創建? –

回答

2

在我看來,你似乎沒有給你的輸入字段添加任何id。它看起來像只有名稱屬性。你也應該給它一個id屬性。

+0

確切地說,id從dom元素中丟失 –

1

查詢被動態地生成不會使大量的感測元件的DOM。

當您生成元素時,請保存對其的引用。這樣你的JavaScript不會做很多重複的昂貴的查詢。

要回答你的具體問題,它應該工作,你可能忘了將元素插入到DOM。

+0

我如何將它插入dom中? –

+0

@Ravi〜哦不。有你的問題。 :) –

+0

從元素中缺少id,就像你從firebug中看到的那樣,它們是DOM的一部分 –

1

使用Firebug選擇的元素沒有ID屬性。因此,您將無法通過ID獲取它。

0

據我所知,你應該在頁面的頂部寫上你的JavaScript,但是這個元素會在一些執行之後或執行該java腳本代碼之後生成。

所以在這種情況下,特定的JavaScript代碼沒有獲得該元素ID;所以它會檢索一個null值併發送類似的錯誤。

如果可能的話只是試圖調用JavaScript在頁面的底部,或者我們可以一頁後說得到負荷..我認爲這會爲你相同的代碼工作..

只是,試一次,如果您的你好運然後會得到你的Element Id

謝謝。

相關問題