HTMLInputElement: search 事件

非標準:此特性未標準化。我們不建議在生產環境中使用非標準特性,因為它們瀏覽器支援有限,並且可能會更改或被移除。但是,在沒有標準選項的特定情況下,它們可以是合適的替代方案。

當使用 type="search"<input> 元素髮起搜尋時,會觸發 search 事件。

有幾種方式可以發起搜尋,例如當 <input> 元素獲得焦點時按下 Enter 鍵,或者,如果存在 incremental 屬性,則在最後一次按鍵後經過 UA 定義的超時時間(新的按鍵會重置超時,因此事件的觸發是 防抖動 的)。

當前 UA 實現的 <input type="search"> 還有一個額外的清除欄位的控制元件。使用此控制元件也會觸發 search 事件。在這種情況下,<input> 元素的值將是空字串。

此事件不可取消。

語法

在諸如 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}`);
};

規範

此事件不是任何規範的一部分。

瀏覽器相容性