2016-03-15 97 views
0

我试图根据子元素值为容器设置一个属性,但我得到应用于所有容器的第一个找到的值的属性。jQuery根据元素值添加属性值

$(function() { 
    $("div.column").each(function() { 
    $(this).attr("my-data", $("div.column").find(".value").html()); 
    }); 
}); 

https://jsfiddle.net/76mjyb2n/10/

+1

首先,使用'数据()'来存储自定义信息与元素。添加一个'my-data'属性会使你的HTML无效。其次,当通过DOM遍历可以容易地从元素访问原始值时,向元素添加属性似乎没什么意义。 –

回答

0

你应该在循环中再次使用$(this)

$(function() { 
    $("div.column").each(function() { 
    $(this).attr("my-data", $(this).find(".value").html()); 
    }); 
}); 

参见:https://jsfiddle.net/76mjyb2n/12/

+0

谢谢,现在我明白了。 –