2010-11-21 24 views
2

有沒有一種jQuery方式來檢索表單輸入元素的佔位符屬性?我試過這個很明顯的:jQuery無法檢索佔位符屬性值?

alert($('form_input_element').attr('placeholder')); 

但是由於某種原因,它在firefox和chrome中都返回undefined! 所有其他屬性都顯示正常,上面的代碼 ...這是一個在jQuery中的錯誤?使用最新版本。有沒有解決方法?

UPDATE:好的,非常令人驚訝的另一個jQuery插件被真正刪除佔位符屬性上的所有投入要素......這就是爲什麼我得到undefineds。

+0

@我不認爲有任何錯誤在jquery中,請檢查您的類名正確和其他人說的檢查點的盈方 – kobe 2010-11-21 08:10:24

+0

我已經突出顯示我的句子,我說上面的代碼工作正常,這不是不恰當地選擇輸入元素的問題。 – 2010-11-21 08:12:06

+0

@at你可以發佈你的完整的html或在jsfiddle.net中創建相同的html – kobe 2010-11-21 08:26:38

回答

0

form_input_element的一個類名?如果是這樣,你需要在它前面有一個.。 (即$(".form_input_element")

如果它是一個ID,那麼你需要在它前面的#。 (即$("#form_input_element")

請記住,您傳遞給jQuery對象的字符串實際上與CSS選擇器相同,因此它必須被格式化爲這樣。目前,您的選擇器正在尋找名稱爲form_input_element的元素,該元素不存在。

+0

我應該已經更清楚了,但問題不是這樣的...我可以查詢輸入元素的其他屬性,所以我知道我正確地選擇它。這只是佔位符元素,我猜是jQuery的問題。 – 2010-11-21 08:09:51

1

我認爲問題是,你的選擇可能匹配多於一個輸入,和您的集合的第一個具有像在這個例子中沒有定義佔位符屬性

http://jsfiddle.net/fcalderan/rmN7J/

因此請確保您的選擇返回一個輸入或所有您的輸入選擇有佔位符屬性定義

+0

謝謝,有道理,這將是一個常見的錯誤。但是,我解決了這個問題,正如我在問題中的更新所表明的。 – 2010-11-21 17:38:41