JS修改input的value值,打印出来还是之前的值的解决办法

项目中遇到一个问题,使用 JS 修改 input 的值,打印出来还是之前的值,并没有改变。

示例:

<input id="inp" value="1" />

使用 JS 修改 input 的 value 值为 10 ,但是打印出来还是之前的 1 。

var inp = document.getElementById("inp");
inp.value=10;
console.log(inp); // <input id="inp" value="1">

原因是 value 属性赋值只改变了内存中的值,不会自动触发 oninputonchange 事件,但输入框的值却已经变化了。如果想要触发事件,则必须手动触发才行。

如要改变 value 值可使用下面的方法:

inp.setAttribute('value',10);


推荐阅读:

Vue.js学习笔记——事件监听

用css实现文本溢出 超出部分隐藏显示省略号

JetbrainsCrack-2.7激活补丁更新 亲测激活PhpStorm2018

各大网站CSS初始化代码集合

js获取input上传文件的文件名和扩展名的方法

赞 (1)
分享到: +

评论 沙发

换个身份

  • 昵称 (必填)
  • 邮箱 (选填)