我是通过日历设置日期的.显然,日历小部件的功能如下:

document.getElementById('datetimetext').value = date_value;

What I want is:
On changing value in the date-time textfield I need to reset some other fields in the page. I've added a onchange event listener to the datetimetext field which is not getting triggered, because I guess onchange gets triggered only when the element gets focus & its value is changed on losing focus.

因此,我正在寻找一种手动触发这个onchange事件的方法(我想应该判断文本字段中的值差).

有什么 idea 吗?

推荐答案

有几种方法可以做到这一点.如果onchange侦听器是通过element.onchange属性设置的函数,并且您不担心事件对象或冒泡/传播,那么最简单的方法就是调用该函数:

element.onchange();

如果需要完全模拟真实事件,或者通过html属性或addEventListener/attachEvent设置事件,则需要进行一些功能检测以正确触发事件:

if ("createEvent" in document) {
    var evt = document.createEvent("HTMLEvents");
    evt.initEvent("change", false, true);
    element.dispatchEvent(evt);
}
else
    element.fireEvent("onchange");

Javascript相关问答推荐

按钮未放置在html dis位置

如何从JSON数组添加Google Maps标记—或者如何为数组添加参数到标记构造器

Phaser 3 console. log()特定游戏角色的瓷砖属性

我可以从React中的出口从主布局调用一个处理程序函数吗?

如何从一个列表中创建一个2列的表?

使用GraphQL查询Uniswap的ETH价格

如何在文本字段中输入变量?

WP Bootstrap NavWaker:下拉菜单一次打开所有下拉菜单

确保函数签名中的类型安全:匹配值

Reaction-SWR-无更新组件

更新Redux存储中的对象数组

有角粘桌盒阴影

如何检测当前是否没有按下键盘上的键?

在范围数组中查找公共(包含)范围

使用静态函数保存 node 前的钩子

如何用react组件替换dom元素?

在此div中添加一个类,并在一段时间后在Java脚本中将其删除

如何为两条动态路由创建一个页面?

如何动态呈现适合未知屏幕大小的最大数量的表行?苗条的

我怎么才能拿到幼风登录?