2013-10-30 41 views
0

我想僅在具有設置的自定義數據屬性(data-title)的元素進行點擊時執行功能。目前它們只是abutton元素。訪問某些元素上的所有自定義數據屬性

爲什麼這段代碼執行上即使沒有data-title所有abutton元素設置?

$('a[data-title!=""], button[data-title!=""]').on('click', function() { 
    // do something 
}); 

我應該改變什麼?

回答

2

使用Has Attribute Selector

$('a[data-title], button[data-title]').on('click', function() { 
    // do something 
}); 
+0

我覺得啞巴。謝謝你... –

+0

@JaredEitnier不要覺得你已經學不到新東西了:) –

+1

*學會了:)希望你也做了太多哈哈。 –

1

你需要的是attribute exists selector

$('a[data-title], button[data-title]').on('click', function() { 
    // do something 
}); 

爲什麼呢?
在你的病情,你正在檢查data-title!="",但如果元素不具備的屬性data-title的屬性值將是null""(空字符串),因此測試result !== check將返回true,因爲null !== ""