2011-01-05 76 views
3

我有這個網站:jQuery的每ATTR功能

<input id="testme" test="something"/><label test="something2"></label> 

和這個js

$("[test]").each(alert($(this).attr("test"))); 

這裏演示了:

jsfidde

我想提醒會給我"something",然後"something2"。但它什麼也沒做!

這是怎麼回事?

回答

13

你正在提醒錯誤的東西。 each只是返回集合/ jQuery。您需要在每個回調中警示以提醒自定義屬性的值。也。在分配[自定義屬性] [1]時,請使用data-前綴以達到更好的標準符合性。

$(".classname").each(function(){ 
    alert($(this).attr("classname")); 
}); 
+0

哈哈。對於這個混亂的例子,感到抱歉。警告錯誤的地方是一個錯字。正如你也證明的那樣,這個問題是我缺少'function(){'。是的,我打算使用'data-'。這是我第一次實際上會使用'data-',所以當它引發一個問題時我就把它關掉了。但是我犯了一個愚蠢的錯誤,忘記了函數(){'的東西。謝謝! – kralco626 2011-01-05 16:06:20