JS修改input/select value后触发事件使其生效

工作中遇到过很多种情况需要通过js或者jQuery去修改input/select的value值,但是,往往只是修改了元素的value是没有用的,value值并没有真正的被成功设置上去,下面分享两个我用过的有效的方法,也算是自己做个记录。

(一)select格式的修改value

  • (1)用的是jQuery:
document.getElementById("selectId").value="testChange";
$("#selectId").change();   
  • (2)原生JS:
var county=document.getElementById("selectId");
county.value="testChange";
var eventMonth;
eventMonth = document.createEvent("HTMLEvents");
eventMonth.initEvent("change", true, false);
county.dispatchEvent(eventMonth);

(二)input格式的修改value

这里假定我们要修改的是id为email的文本框:

var email = 'rollanTest@qq.com ';
var createEmail=document.getElementById("email");
createEmail.value=email;
var eventMonth;
eventMonth = document.createEvent("HTMLEvents");
eventMonth.initEvent("input", true, false);
createEmail.dispatchEvent(eventMonth);
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容