HTMLInputElement:search 事件

非标准:此功能是非标准的,并且不在标准跟踪中。请勿在面向 Web 的生产站点上使用它:它不会对每个用户都有效。实现之间也可能存在很大的不兼容性,并且行为将来可能会发生变化。

当使用类型为 type="search"<input> 元素启动搜索时,将触发 search 事件。

可以通过多种方式启动搜索,例如,当 <input> 处于焦点状态时按下 Enter 键,或者,如果存在 incremental 属性,则在上次按键后经过 UA 定义的超时时间后(新的按键会重置超时时间,以便事件的触发是 去抖动 的)。

<input type="search"> 的当前 UA 实现有一个额外的控件来清除字段。使用此控件也会触发 search 事件。在这种情况下,<input> 元素的 value 将为空字符串。

此事件不可取消。

语法

在诸如 addEventListener() 之类的方法中使用事件名称,或设置事件处理程序属性。

js
addEventListener("search", (event) => {});

onsearch = (event) => {};

事件类型

一个通用的 Event

示例

js
// addEventListener version
const input = document.querySelector('input[type="search"]');

input.addEventListener("search", () => {
  console.log(`The term searched for was ${input.value}`);
});
js
// onsearch version
const input = document.querySelector('input[type="search"]');

input.onsearch = () => {
  console.log(`The term searched for was ${input.value}`);
};

规范

此事件不属于任何规范的一部分。

浏览器兼容性

BCD 表仅在启用 JavaScript 的浏览器中加载。