目前,我的HTML代码示例如下所示:如何更改的属性值里面的数据属性
<div class="jbar" data-init="jbar" data-jbar='{
"message" : "Test",
"state" : "open"
}'></div>
我怎样才能改变这种情况下的state
价值closed
?
目前,我的HTML代码示例如下所示:如何更改的属性值里面的数据属性
<div class="jbar" data-init="jbar" data-jbar='{
"message" : "Test",
"state" : "open"
}'></div>
我怎样才能改变这种情况下的state
价值closed
?
jQuery的会看起来像
var t=JSON.parse($('.jbar').attr('data-jbar'));
//or JSON.parse($('.jbar').data('jbar'));
t.state='closed';
$('.jbar').attr('data-jbar',JSON.stringify(t));
//or .data('jbar',JSON.stringify(t));
你好,我试过你的解决方案,但它仍然显示'open'。这里是小提琴:http://jsfiddle.net/bb9vnzw2/ –
@VuiLaChinh你的小提琴没有'$('。jbar')。attr('data-jbar',JSON.stringify(t)); '部分。 –
这里是一个小提琴设置'attr' http://jsfiddle.net/bb9vnzw2/3/像@Jason_P提到 – depperm
好,存储,因为它是,它是一个字符串,而不是一个对象。你必须解析它,然后改变它,然后再存储它。 – Draco18s
谢谢你的帮助。如果你能给我一个例子说明如何去做,或者有什么更简单的方法来实现我的目标,那该多好? –