2011-10-06 77 views
1

很簡單的問題。我有一個元素(一個標籤),它有一個onclick來調用一個javascript函數。在其他方面,我希望這個函數能夠迴應調用它的元素的innerHTML。所以,在這種情況下,atag的innerHTML。如何在javascript中獲取此元素的innerHTML?

我該怎麼做?

回答

6
<element onClick="alert(this.innerHTML);"> ... </element> 
+2

真的嗎?內聯事件處理程序。你甚至可以用它來解決它。自1872年以來,這一直不是很酷。 – davin

+2

誰在乎?它有效,不是嗎? –

+0

不錯的嘗試,但它有點解僱我說的調用JavaScript函數的事實 – David

2

標記:

<element id="foo"> ... </element> 

JS:

document.getElementById('foo').addEventListener('click', fn); 

function fn(){ alert(this.innerHTML); } 

http://jsfiddle.net/g7Bau/2/

這裏要注意,基本上回答你的問題,重要的是,該事件偵聽器調用時已將this綁定到導致事件發生的DOM節點火。所以我們可以在函數中使用this,它是通用的。您可以添加另一個元素,並使用fn綁定點擊偵聽器,並且這兩個元素都可以使用一個函數。

+0

'('click',fn,false)' – Raynos

+0

@雷諾斯,你說得對。根據HTML5規範,所有主流瀏覽器的趨勢是讓它成爲可選項。這顯然不是一個跨瀏覽器的解決方案,因爲 davin