2012-04-26 92 views
-1

我可以這樣做嗎?獲取名稱或類別的按鈕元素ID

 var gender = $('.ImdbAddArtist').click(function() { 
    alert(this.id); 
}); 

我使用下面的代碼,但它有點奇怪。

我可以從他們的名字有按鈕的ID?

+3

你試過了嗎?它應該工作正常。 – 2012-04-26 15:05:52

+0

是的。你可以用$(「[name = YourElementName]」)查詢。 – 2012-04-26 15:07:55

+0

你甚至試過這個嗎?它工作正常。 – 2012-04-26 15:13:49

回答

2

是的。您的代碼將正常工作:

//Bind click event handler to all elements with class of 'ImdbAddArtist' 
var gender = $('.ImdbAddArtist').click(function() { 
    /* When clicked, alert the value of the 'id' property of 'this'. 
    'this' refers to the element that was clicked. */ 
    alert(this.id); 
}); 

只要點擊的元素有一個id屬性,你會得到顯示該值的警報。如果它沒有id屬性,則會收到空白警報。

這裏是working example

1

$('.ImdbAddArtist')。這選擇 一個元素 多個元素。

一旦選定了這些元素,您就可以隨心所欲地做任何事情。

如果一個元素有一個id,你可以得到這個id,這與它的選擇無關。

+0

嚴格地說,它不選擇一個或多個元素,因爲它是一個類選擇器。 – 2012-04-26 15:09:46

+0

@AnthonyGrist:真的,讓我解決這個問題。 – 2012-04-26 15:10:44

+0

$('ImdbAddArtist')。attr(「id」);給我undefined:S – snnlankrdsm 2012-04-26 15:11:31

1

你的代碼工作正常,但我想去.attr()方法來獲取元素屬性...

的元素alert($(this).attr("id"));

的ID類元素的alert($(this).attr("class"));

只使用.attr ()函數的jquery將得到元素的ID

+2

爲什麼加入額外的負擔再次調用jQuery,然後調用一個jQuery方法,何時可以直接在元素上訪問屬性? – 2012-04-26 15:09:02

+1

@JamesAllardice因爲更多的jQuery總是更好! – 2012-04-26 15:10:01

+0

哪個元素我沒有定義 – snnlankrdsm 2012-04-26 15:10:10