时间:2021-05-26
js中onchange事件是在客户端改变输入控件的值,比如一个textbox,会出发的一个事件。但是如果在js代码中改变一个textbox的value,而不是通过键盘输入改变一个textbox值的话,是不会出发onchange事件的。
那么,如何在js代码模式通过代码触发textbox控件的onchange事件呢,经过查阅资料,发现js提供了一个方法,可以触发控件的应该是所有事件。object.fireEvent()方法,使用方法如 object.fireEvent('onchange'),即可触发控件的onchange事件。
同理,js中使用fireEvent方法还可以触发其他的空间事件。
•补充一下,上述的fireEvent方法,在firefox浏览器并不支持,那么,如果想在ie和ff都可以运行的话,可是尝试下面的代码。
复制代码 代码如下:
if (obj.fireEvent)
{
obj.fireEvent('onchange');
}
else
{
obj.onchange();
}
也就是判断一下fireEvent事件是否可用,不可用则直接使用onchange()方法。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
1.onchange事件与onpropertychange事件的区别:onchange事件在内容改变(两次内容有可能相等)且失去焦点时触发;onproperty
oninput,onpropertychange,onchange的用法onchange触发事件必须满足两个条件:a)当前对象属性改变,并且是由键盘或鼠标事件激
select或text的onchange事件需要手动(通过键盘输入)改变select或text的值才能触发,如果在js中给select或text赋值,则无法触发
select或text的onchange事件需要手动(通过键盘输入)改变select或text的值才能触发,如果在js中给select或text赋值,则无法触发
也就是说:onpropertychange事件在用键盘每改变一下文本框的值或用js改变其值便会触发一下,而onchange只有在用键盘改变其值,然后在失去焦点(