簡體   English   中英

Javascript - 如何獲取觸發事件的元素

[英]Javascript - How do I pick up which element fired an event

使用來自 W3schools 的示例代碼,我試圖設置一個事件處理程序,當表單中的多個“輸入”元素中的任何一個發生更改時,該事件處理程序將觸發。 經過多次嘗試,我有以下幾點:

 var s = document.getElementById("add_data"); document.getElementById("add_data").addEventListener("change", function() { field_check(p1, p2); });

位於 HTML 的末尾,並在創建表單之后。
(add_data 是包含許多“輸入”元素作為子元素的表單的名稱。我想要的是接收 name 參數據我所知,p1 和 p2 應該包含事件和觸發事件的字段的名稱。相反,我從事件處理程序中收到了一個參考錯誤,“p1 未定義”。在搜索中,我發現了許多令人費解的解決方案,其中一些我不明白,但沒有一個能真正解決我的問題。我是什么做錯了嗎?

你的意思是做

var s = document.getElementById("add_data");
s.addEventListener("change", function(event) {
  field_check(event, event.target.name);
});

甚至更簡單

document.getElementById("add_data").addEventListener("change", field_check);

並且有

function field_check(event) {
  console.log(event.target.name);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM