JS修改input/select value后触发事件使其生效
2019-05-09 本文已影响0人
Rollan
工作中遇到过很多种情况需要通过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);