如何使用Javascript更改JSON对象

时间:2016-01-13 07:08:30

标签: javascript json

我的代码中有以下行。它是由我的IDE生成的。基本上这一行包含一个div作为动画侧边栏。侧边栏的宽度由' v'表示。参数(在这里设置为85)。



<div id="sidebar" class="inner-element uib_w_5 uib_sidebar rightbar bar-bg thumb-bg bar-gutter" data-uib="layout/right_sidebar" data-ver="1" data-anim="{'style':'overlap', 'v':85, 'side':'right', 'dur':200}">
&#13;
&#13;
&#13;

我想改变&#39; v&#39;的价值。使用脚本标记到250。

我尝试插入以下脚本来覆盖上面的data-anim属性,但它不起作用。

&#13;
&#13;
<script>
 document.getElementById("sidebar").jsonObj['data-anim'] = "{'style':'overlap', 'v':250, 'side':'right', 'dur':200}"
</script>
&#13;
&#13;
&#13;

关于我的<script>代码有什么问题的任何想法?

2 个答案:

答案 0 :(得分:1)

使用sidebar元素的setAttribute

应该是

var sidebar = document.getElementById("sidebar");
sidebar.setAttribute( "data-anim" , "{'style':'overlap', 'v':250, 'side':'right', 'dur':200}" );

同时阅读this setAttribute documentation

document.getElementById("sidebar").setAttribute("data-anim", "{'style':'overlap', 'v':250, 'side':'right', 'dur':200}");

var abc = document.getElementById("sidebar").getAttribute("data-anim");

alert(abc);
<div id="sidebar" class="inner-element uib_w_5 uib_sidebar rightbar bar-bg thumb-bg bar-gutter" data-uib="layout/right_sidebar" data-ver="1" data-anim="{'style':'overlap', 'v':85, 'side':'right', 'dur':200}">

答案 1 :(得分:0)

我找到了自己问题的答案。

以下是可行的<script>

document.getElementById(“sidebar”)。dataset.anim =“{'style':'overlap','v':250,'side':'right','dur':200}”;