2012-11-30 86 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()