2011-11-18 238 views
0

我用html創建了一個文檔。我想從根節點檢索子節點,我正在使用以下代碼...從父節點檢索子節點

這就是HTML。

<a id="Main1" onclick="RetrieveElement(this);">Test1 
<div name="Top1"> 
</div> 
<div name="Middle1"> 
I'm Middle. 
</div> 
<div name="Bottom1"> 
</div> 
</a> 
<a id="Main2" onclick="RetrieveElement(this);">Test2 
<div name="Top1"> 
</div> 
<div name="Middle1"> 
I'm Middle. 
</div> 
<div name="Bottom1"> 
</div> 
</a> 

javascript。

function RetrieveElement(element){ 
alert(this.getElementByName("Middle1").innerHTML); 
} 

但是,這是行不通的。我試圖找到問題,但無法解決它...任何幫助?

+1

由於ID應該是唯一的,在你的榜樣,你可以只用'的document.getElementById(「Middle1」)innerHTML'一樣會有沒有其他的比賽。否則,是使用jQuery的一個選項? –

+0

對不起,我更新了我的問題。 – zanhtet

回答

5

如果你想只得到第一個子元素:

var element = document.getElementById('Main1').children[0]; 

如果你想獲得第一錨元素:

var element = document.getElementById('Main1').getElementById('Middle1'); 
-2

你可以使用jQuery?

這將是容易,因爲this

1

getElementById是文獻的方法,而不是元素。試試這個:

<script type="text/javascript"> 
    function RetrieveElement(element){ 
     window.alert(document.getElementById("Middle1").innerHTML); 
    } 

</script> 

<a id="Main1" href="#" onclick="RetrieveElement(this);">Test1</a> 
<div id="Top1"> 
</div> 
<div id="Middle1"> 
    I'm Middle. 
</div> 
<div id="Bottom1"> 
</div>