2010-05-05 130 views
3

我確信這很簡單,但我似乎無法弄清楚。我需要能夠傳遞一個元素id的函數,並知道它是什麼元素標籤。jquery選擇器(查找標籤)

例如:

<a id="first"></a> 
<input id="last" /> 

如果我知道這個ID是「第一」,我怎麼能得到該標籤是「一」?

回答

3

這應做到:

var tagName = $("#first")[0].tagName; 

[0]get(0)的代名詞。你從jQuery對象中獲得第一個元素並使用DOM tagName屬性。這可以說是更直接在香草的Javascript:

var tagName = document.getElementById("first").tagName; 
2

可以使用DOM屬性tagName這樣的:

document.getElementById('first').tagName 

或者使用jQuery,你需要做的:

$('#first')[0].tagName 
1

$ ( 「#first」)ATTR( 「變量名」);

+0

我不認爲這會工作。 'tagName'不是一個屬性。 – 2010-05-05 01:53:04

+0

@Jacob - 不要敲它:) http://jsfiddle.net/J8eUS/但是...我同意這是在這種情況下過度使用jQuery。 – 2010-05-05 01:54:49

+0

@尼克,這是令人難以置信的! – 2010-05-05 02:10:22

2

我會用.nodeName這裏(there are a few reasons this matters),像這樣:

$("#first").get(0).nodeName 
//or the vanilla js way... 
document.getElementById("first").nodeName 
+0

這些差異在這裏沒有關係。 – cletus 2010-05-05 01:58:07

+0

@cletus - 確實如此,但是因爲OP不知道'.tagName'或'.nodeName',所以我認爲最好在第一次學習時指出不同之處。 – 2010-05-05 02:03:35