我有一个<input>
标记,我想以编程方式进行更改。输入没有内部文本,它将其值保存在aria属性上。
所以,这是<input>
:
<input type="text" id="foo" aria-valuemin="1" aria-valuemax="10" autocomplete="off" role="spinbutton" aria-valuenow="1">
考虑我们将标记保存到以下bla
变量:
var bla = document.getElementById("foo");
下面是我尝试使用的命令列表。但他们都没有工作。
bla.value = 2;
bla.value = "2";
bla.setAttribute("aria-valuenow",2);
bla.setAttribute("aria-valuenow","2");
任何想法为什么?元素的id
是唯一的,我查了一下。
我正在研究某人的其他代码。是否有可能其他开发人员改变了<input>
的行为?
答案 0 :(得分:0)
正如我的其他用户所指出的,请在命名元素id
时使用唯一ID。以下是使用setAttribue()
解决问题的方法。
var input = document.getElementById("input");
input.setAttribute("aria-valuenow",2); // To set attribute to input element
console.log(input.hasAttribute('aria-valuenow')) // To check if input has the mentioned attribute
console.log(input.getAttribute('aria-valuenow')); // To access the value of the attribute
<input type="text" id="input" aria-valuemin="1" aria-valuemax="10" autocomplete="off" role="spinbutton" aria-valuenow="2">
答案 1 :(得分:-2)
你可以使用,
document.getElementById("mytext").value = "My value";