我正在尝试更改以下代码的数据值:
<div class="media-body">
<small>Total MA'ers found</small>
<h2 id="totalma" class="media-heading animate-number" value="29" data-animation-duration="1500">0</h2>
</div>
我试过了:
document.getElementById('totalma').data-value = 90;
返回错误:ReferenceError:左侧无效分配
答案 0 :(得分:6)
尝试更改此内容:
document.getElementById('totalma').data-value = 90;
到此(如果你想改变value属性):
document.getElementById('totalma').setAttribute('value', 90);
到此(如果要更改/设置数据值属性):
document.getElementById('totalma').setAttribute('data-value', 90);
答案 1 :(得分:1)
.data-value
不是合法的JavaScript属性名称,并且在任何情况下,用户指定的DOM 属性都不会自动镜像到属性
因此,正确的方法是:
document.getElementById('totalma').setAttribute('value', 90);
{<input>
元素的value
属性和.value
属性是镜像的,但在这种情况下,您使用的是<h2>
元素没有这样的属性/属性]。
但是,如果您实际上打算使用HTML5属性data-value
,那么正确的用法是:
document.getElementById('totalma').dataset.value = 90;
答案 2 :(得分:0)
改为使用setAttribute:
document.getElementById('totalma').setAttribute("value", 90);