onChange 事件在哪个权威规范中进行了详尽的定义?

2024-04-29

我有点惊讶地发现,html 文档中的 onChange 事件在文本输入或文本区域上触发,而不是在其值实际更改时触发,而是仅在焦点离开元素时触发(当然,如果其值已更改) )。

所以我一直在寻找说明这一点的规范,但找不到。我可以找到数以百万计的教程来解释这一点,包括 W3Schools 的教程,但我找不到定义事件预计何时触发的标准。

在 HTML5 规范本身中,列出了事件的名称,但没有提及:http://www.w3.org/html/wg/drafts/html/master/ http://www.w3.org/html/wg/drafts/html/master/

在另一个规范“DOM level 3 Events Specific”中,甚至没有提及:http://www.w3.org/TR/DOM-Level-3-Events/ http://www.w3.org/TR/DOM-Level-3-Events/

那么定义它的标准是什么?


中简要提到了内在事件部分 of the W3C 4.01 规范 http://www.w3.org/TR/html401/interact/scripts.html#h-18.2.3:

"The onchange当控件失去输入焦点及其 自从获得焦点以来,值已被修改”。

它也被更广泛地提到MSDN http://msdn.microsoft.com/en-us/library/windows/apps/hh441307.aspx:

“此事件在提交内容时触发,而不是在提交内容时触发 价值正在改变。例如,在文本框上,不会触发此事件 当用户打字时,而是当用户提交更改时 保留具有焦点的文本框。 另外,该事件在由指定的代码之前执行onblur当控制也 失去焦点。”

最后,关于MDN https://developer.mozilla.org/en-US/docs/Web/Reference/Events/change:

取决于要更改的表单元素的类型和方式 用户与元素交互,更改事件在 不同时刻:

  • 当元素被激活时(通过单击或使用键盘)<input type="radio"> and <input type="checkbox">;
  • 当用户明确提交更改时(例如,通过从<select>单击鼠标的下拉菜单,从日期选择器中选择日期<input type="date">,通过选择一个文件 在文件选择器中<input type="file">, etc.);
  • 当元素在其值被更改但未提交后失去焦点时(例如,在编辑<textarea> or <input type="text">).

另一个可能有用的链接 -WhatWg - 规范 - 更改事件。 http://www.whatwg.org/specs/web-apps/current-work/multipage/common-input-element-attributes.html#event-input-change

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

onChange 事件在哪个权威规范中进行了详尽的定义? 的相关文章

随机推荐