2011-11-18 129 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>