2017-02-10 36 views
0

我一直在尋找一種更短,更快捷的jQuery選擇方法,我想知道是否有更簡單的方法來選擇數據屬性的值一個給定的元素。現在我有這個JQuery - 獲取選擇器中元素的數據屬性值,而不是attr

const phoneCode = $('#loginCountryCodeInput').attr('data-phone-code'); 

得到這個數據屬性

<input id="loginCountryCodeInput" data-phone-code="+1"> 

有一個較短的選擇,像這樣的價值呢?

const phoneCode = $('#loginCountryCodeInput[data-phone-code]'); 
+0

不,這不行! – Pugazh

回答

3

使用data()方法來獲得定製data-*屬性值。

$('#loginCountryCodeInput').data('phone-code'); 


供參考:沒有辦法讓由選擇器,其生成一個jQuery對象的值。
方法之間有一些區別: jQuery Data vs Attr?

+0

不錯,但問題是通過選擇器來實現它:) – Marco

+1

@Marco:沒有辦法獲得它的價值,只需使用選擇器:) –

1

您可以爲

$("#controlid").data("phone-code"); 
0

.data()功能試試這個。還有其他可用的答案。爲你選擇一套最好的套房。

document.querySelectorAll('[data-phone-code="+1"]'); 
$('a[data-phone-code=+1]'); 
相關問題