[英]retrieve and loop all data- attributes starting with string in an element
鑒於:
<a href="#" data-ajax-this="foo" data-ajax-that="faa" data-apple="tree" data-pear="pot"></a>
我只想檢索和循環“ data-ajax-this”和“ data-ajax-that”。
我可以像這樣循環所有數據屬性:
$.each($('a').data(), function(i,v){
console.log(i+" , "+v);
})
...而且我想我可以查詢“ i”以查看函數中是否包含“ ajax”:
$.each($('a').data(), function(i,v){
if(i.indexOf('ajax') !== -1){
console.log(i+" , "+v);
}
})
但理想情況下,我只想使用.data()進行選擇。 是否可以做類似的事情:
$.each($('a').data('ajax'+*), function(i,v){
console.log(i+" , "+v);
})
謝謝
盡管它不是很優雅,並且依賴於嵌套循環,但是您可以完成所追求的目標。
您可以使用attributes
屬性並在其上循環。
$.each($('a'), function() {
$.each(this.attributes, function() {
if ( this.name.indexOf('data-ajax') === 0 ) {
// Do somethng with this.value
}
});
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.