2012-11-30 49 views
0

我试图通过使用javascript函数获取跨度标记的id为M24。使用javascript在标记中获取跨度标记ID

<a HREF="javascript:void(0)"><font color="#000080"><span id=M24>2012-2013</span></font 
color="#000080"></a> 

我米使用下面的代码,但它不返回任何值

<SCRIPT LANGUAGE="javascript"> 
function clickHandler() 
{ 
    var xid=document.getElementID(this); 
    alert("Span id is "+xid); 

} 
</SCRIPT> 

回答

1

重写功能类似下面

function clickHandler() 
{ 
    var xid=document.getElementsByTagName("span"); 
    alert("Span id is "+xid[0].id); 

} 

一要找出多跨度的ID

function clickHandler() 
{ 
    var xid=document.getElementsByTagName("span"); 
    for(var i=0;i<xid.length;i++){ 
    alert("Span id is "+xid[i].id); 
} 

而不是以上的功能,你可以简单地做到这一点,重写你的函数类似这样的

function clickHandler(evt) 
{ 
    var e = window.event || evt; 
    var spanid = e.target.id;//to know on which span user has clicked. 
} 

,并添加您的跨度是这样的

<span id=M24 onclick="clickHandler(evt);">2012-2013</span> 
<span id=M25 onclick="clickHandler(evt);">2012-2013</span> 
...so on.... 
+0

有在网页多跨标签,所以我还需要特定区间的ID为每次点击的事件。 – user1865365

+0

upvote的答案,如果它解决了你的问题 –

+0

你没有回答多个跨度我怎么能得到的id我不能通过索引0,因为用户可以选择任何索引的跨度。 – user1865365

1

这是getElementById(),不getElementID()

目前,这表示是不正确的。因为如果你知道标签ID,那么你应该使用getElementById()

但在你的情况下,使用getElementsByTagName()