2013-10-01 48 views
-2

我想使用getElementById重複頁面中的信息,但它沒有顯示出來。我列入IDX-子頭的腳本(文件夾IDX-主下):getElementById沒有顯示

<script type="text/javascript"> 
var elem = document.getElementById('IDX-detailsField-address'); 
var newElem = elem.cloneNode(true); 
newElem.setAttribute('IDX-detailsField-address', 'IDX-details-address'); 
var before = elem.nextSibling; 
elem.parentNode.insertBefore(newElem, before);</script> 

我已經設置了複製的元素,使其具有不同的ID(IDX-詳細地址).Added股利,但我沒有看到div的內容。

<div id="IDX-details-address"></div> 

該腳本適用於http://jsfiddle.net/BR72b/。 網站是http://austinhometeam.com 在此先感謝!

+0

你有沒有試過調試javascript,如果有任何JavaScript錯誤或任何奇怪的東西? –

+0

什麼是'newElem'? – tymeJV

+0

你是不是指'.setAttribute(「id」,「這裏的任何值」)?或者更簡單 - '.id =「這裏的任何值」' – Ian

回答

1

首先,setAttribute的使用不當。當你做setAttribute時,第一個參數必須是一種屬性,第二個參數必須是該屬性的值。其次,你應該創建一個新的元素,而不是通過引用傳遞一個元素。最好的辦法是使用cloneNode()來保存所有的屬性,甚至是節點的子節點。

如果我明白你的問題正確,這將是一個解決方案:

var elem = document.getElementById('IDX-detailsField-address'); 
var newElem = elem.cloneNode(true); 
newElem.setAttribute('id', 'IDX-details-address'); 
var before = elem.nextSibling; 
elem.parentNode.insertBefore(newElem, before); 

當使用cloneNode知道它會複製元素的ID。當頁面上有重複的ID時,只有一個可用。

+0

嗨大衛,謝謝你的回覆。我在腳本中有cloneNode元素,但是當我在這裏複製並粘貼時,我錯過了它。我確實將.setAttribute更改爲'id',但無法理解它爲什麼仍然不顯示。 – Joyce