使用相同的命名和插入值扫描所有数据属性 - jQuery

时间:2016-04-15 11:20:53

标签: javascript jquery html

假设我在页面上有多个data-foo="value"var ID = "12"。如何在网页上定位该数据属性foo的所有实例,并将ID添加到其末尾,使其变为data-foo="value12"

模板引擎的结果类似于data-foo="value{ID}",但我没有使用它,只是纯JS或jQuery。

data-foo-"value"的值在整个页面中都有所不同。

2 个答案:

答案 0 :(得分:0)

您可以使用属性等于选择器来定位它们,然后在.attr()方法的回调函数中修改它们的值:

 var ID = "12";
 $([data-foo="value"]).attr( "data-foo", function( i, val ) {
   return val + ID;
 });

答案 1 :(得分:0)

根据 MilindAnantwar的答案。

您可以使用$('*[data-foo]')选择器选择属性为data-foo的所有元素,如下所示:

var ID = "12";

$('*[data-foo]').attr( "data-foo", function( i, val ) {
   return val + ID;
});

请参阅Jsfiddle (检查元素并查看html代码)