簡體   English   中英

檢索並循環所有以元素中的字符串開頭的數據屬性

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM