JavaScript 中的 change

什么是 change 事件?

change 事件是 HTML 表單元素的一種事件類型,當表單元素的值發生變化并且失去焦點時,該事件會被觸發。常見的表單元素包括 <input><select><textarea>

適用元素

  • <input>(type 為 text、checkbox、radio 等)
  • <select>
  • <textarea>

基本使用

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Change Event Demo</title>
</head>
<body><form id="myForm"><label for="myInput">Input:</label><input type="text" id="myInput"><label for="mySelect">Select:</label><select id="mySelect"><option value="1">Option 1</option><option value="2">Option 2</option><option value="3">Option 3</option></select><label for="myTextarea">Textarea:</label><textarea id="myTextarea"></textarea><button type="submit">Submit</button></form><script src="app.js"></script>
</body>
</html>

?js

document.addEventListener('DOMContentLoaded', () => {const inputElement = document.getElementById('myInput');const selectElement = document.getElementById('mySelect');const textareaElement = document.getElementById('myTextarea');inputElement.addEventListener('change', (event) => {console.log('Input changed to:', event.target.value);});selectElement.addEventListener('change', (event) => {console.log('Select changed to:', event.target.value);});textareaElement.addEventListener('change', (event) => {console.log('Textarea changed to:', event.target.value);});
});

在上面的代碼中,我們為每個表單元素添加了一個 change 事件監聽器。當用戶改變元素的值并且失去焦點時,事件會被觸發,控制臺會輸出相應的信息。

change 事件的實際應用

實時表單驗證

change 事件常用于實時表單驗證。例如,我們可以在用戶輸入內容后,立即驗證輸入的有效性并給予反饋:

document.addEventListener('DOMContentLoaded', () => {const inputElement = document.getElementById('myInput');inputElement.addEventListener('change', (event) => {const value = event.target.value;const feedbackElement = document.getElementById('feedback');if (value.length < 3) {feedbackElement.textContent = 'Input must be at least 3 characters long.';} else {feedbackElement.textContent = '';}});
});

動態更新界面

change 事件也可以用于根據用戶選擇動態更新界面內容。例如,當用戶選擇一個選項時,顯示對應的詳細信息:

document.addEventListener('DOMContentLoaded', () => {const selectElement = document.getElementById('mySelect');const detailsElement = document.getElementById('details');const details = {'1': 'Details for Option 1','2': 'Details for Option 2','3': 'Details for Option 3'};selectElement.addEventListener('change', (event) => {const value = event.target.value;detailsElement.textContent = details[value] || 'No details available';});
});

注意事項

  1. changeinput 事件的區別

    • change 事件在元素失去焦點時觸發,而 input 事件在元素的值每次發生變化時立即觸發。
    • input 事件適用于需要實時更新的場景,例如搜索框的自動補全。
  2. 跨瀏覽器兼容性

    • change 事件在主流瀏覽器中均有良好的支持,但在某些舊版瀏覽器中可能存在細微差異。因此,建議在實際項目中進行充分的測試。

change 事件是一個非常有用的事件類型,特別適用于表單元素的值變化檢測和處理。在實際開發中,合理使用 change 事件可以提升用戶體驗,提高表單交互的動態性和響應性。希望本文對你理解和使用 change 事件有所幫助。?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/36036.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/36036.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/36036.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

基于DeepNLP AI Store真人點評和ShowCase分享社區-AI for Image Generator

來源 quora 社區: https://deepnlpaistore.quora.com/ github: https://rockingdingo.github.io/deepnlp/store/image_generator 內容 DeepNLP AI Store 網址&#xff1a;http://www.deepnlp.org/store/image-generator 網站針對圖像生成類別 Image Generator下多個AI工具如 …

Spring MVC數據綁定和響應——復雜數據綁定(一)數組綁定

一、數組綁定的使用場景 在實際開發中&#xff0c;可能會遇到客戶端請求需要傳遞多個同名參數到服務器端的情況&#xff0c;這種情況采用前面講解的簡單數據綁定的方式顯然是不合適的。此時&#xff0c;可以使用數組來接收客戶端的請求參數&#xff0c;完成數據綁定。 接下來…

CS與MSF的權限互相傳遞/mimikatz抓取windows 2012明文密碼

目錄 CS和MSF的簡單介紹 Metasploit Cobalt Strike 1、CS權限傳遞到MSF 2、MSF權限傳遞到CS 3、使用mimikatz抓取明文密碼 通過修改注冊表用戶重新登錄后抓取明文密碼 今天的任務是兩個 一個是CS與MSF的權限互相傳遞一個是抓取windows2012的明文密碼 那就分別來完成 …

云計算基礎技術

云計算基礎技術概覽 計算類產品主要提供算力&#xff0c;支持業務運行&#xff0c;例如網站、辦公軟件、數據分析等計算能力&#xff0c;目前典型的產品主要是虛擬化和容器&#xff0c;在公有云上的云主機本質也是虛擬機。網絡類產品主要滿足資源的網絡連通性和隔離&#xff0c…

軟考初級網絡管理員__軟件單選題

1.如下圖所示&#xff0c;在IE“Intemet選項”對話框的()選項卡中可指定電子郵件程序。 常規 內容 高級 程序 2.在Excel的A1單元格中輸入函數“ROUND(1/3,3)”,按回車鍵之后&#xff0c;A1中的值為()。 1 1/3 0.34 0.333 3.在輸入Word文檔過程中&#xff0c;為了防止意…

Pinia的基本用法

Pinia的安裝和引入 1.安裝Pinia npm install pinia2. 在vue項目的main.js文件中引入pinia import { createApp } from vue import { createPinia } from pinia import App from ./App.vueconst pinia createPinia() const app createApp(App)app.use(pinia) app.mount(#ap…

日志打印中對容器(包括多級容器)的通用輸出

在日志打印中&#xff0c;往往有打印一個數組、集合等容器中的每個元素的需求&#xff0c;這些容器甚至可能嵌套起來&#xff0c;如果每個地方都用for循環打印&#xff0c;將會特別麻煩。基于這種需求&#xff0c;作者嘗試實現一個通用的打印函數SeqToStr()&#xff0c;將容器序…

線上民族傳統服飾商城

摘 要 隨著互聯網的不斷發展和普及&#xff0c;電子商務成為了人們生活中不可或缺的一部分。傳統的線下購物方式逐漸被線上購物所取代&#xff0c;人們越來越習慣在互聯網上購物。而民族傳統服飾作為我國豐富多樣的民族文化的重要組成部分&#xff0c;具有獨特的藝術價值和商業…

unity VR Interaction Framework 創建新手勢

提示&#xff1a;文章有錯誤的地方&#xff0c;還望諸位大神不吝指教&#xff01; 文章目錄 前言一、新建物體&#xff0c;并添加必要組件二、添加抓取點三、查看手勢的可視化樣式四、制作新的手勢1.點擊編輯2.根據需求調節手指關節3.保存手勢4. 使用創建的手勢5.運行 總結 前言…

等保測評——安全通信網絡——安全區域邊界

安全通信網絡 網絡架構 a) 應保證網絡設備的業務處理能力滿足業務高峰期需要&#xff1b; b) 應保證網絡各個部分的帶寬滿足業務高峰期需要&#xff1b; c) 應劃分不同的網絡區域&#xff0c;并按照方便管理和控制的原則為各網絡區域分配地址&#xff1b; 應核查是否依據重…

遠程過程調用協議gRPC及在go環境下的使用

1. 遠程過程調用協議 1.1 定義 遠程過程調用(Remote Procedure Call&#xff0c;PRC是一種進程間通信技術&#xff0c;它使得程序可以像調用本地函數一樣調用遠程服務器上的函數。RPC 屏蔽了底層的通信細節&#xff0c;讓開發者能夠更專注于業務邏輯&#xff0c;而無需關心網絡…

無源電壓繼電器 JDY-1210AW 導軌安裝 約瑟JOSEF

系列型號&#xff1a; JDY-1002AW電壓繼電器&#xff1b;JDY-1002B電壓繼電器&#xff1b; JDY-1110AW電壓繼電器&#xff1b;JDY-1110B電壓繼電器&#xff1b; JDY-1220AW電壓繼電器&#xff1b;JDY-1220B電壓繼電器&#xff1b; JDY-1100AW電壓繼電器&#xff1b;JDY-110…

服務器數據恢復—用raid6陣列磁盤組建raid5陣列如何恢復原raid數據?

服務器存儲數據恢復環境&#xff1a; 華為OceanStor 5800存儲&#xff0c;該存儲中有一組由10塊硬盤組建的raid6磁盤陣列&#xff0c;供企業內部使用&#xff0c;服務器安裝linux操作系統EXT3文件系統&#xff0c;劃分2個lun。 服務器存儲故障&#xff1a; 管理員發現存儲中rai…

JavaScript的學習之dom的查詢(一)

一、獲得元素 通過document對象調用&#xff1a; getElementById()&#xff1a;通過id屬性獲取一個元素節點對象getElementsByTagName()&#xff1a;通過標簽名獲取一組元素節點對象getElementsByName()&#xff1a;通過name屬性來獲取一組元素節點對象 核心學習代碼 <scrip…

記錄一次即將出現的釣魚新方式

釣魚通常是內網滲透過程中的最為常見的入口方式&#xff0c;但是隨著藍隊人員溯源反制思路開闊&#xff0c;入侵排查能力提升&#xff0c;釣魚也越來越困難&#xff0c;這里就記一種不同尋常的釣魚方式。 pip install 的執行流程&#xff1a; 先獲取到遠端的服務器地址 url 比…

node.js 面試題 1

### 明天要去面試了 今天晚上突擊一下node.js 什么是Node.js&#xff1f;它有什么特點&#xff1f; Node.js是一個基于Chrome V8引擎的JavaScript運行環境&#xff0c;它允許在服務器端運行JavaScript代碼。它的特點包括單線程、非阻塞I/O、事件驅動等 …

dispatch_after

dispatch_after dispatch_after dispatch_after dispatch_after函數并不是延遲對應時間后立即執行block塊中的操作&#xff0c;而是將任務追加到對應隊列中&#xff0c;考慮到隊列阻塞等情況&#xff0c;所以這個任務從加入隊列到真正執行的時間是不準確的。 dispatch_after(…

Kubernetes CSI livenessprobe探活

Kubernetes CSI livenessprobe探活 要實現一個Kubernetes CSI的livenessprobe探活&#xff0c;可以有以下三種方法&#xff1a; HttpServer 1、在CSI中實現一個簡單的HttpServer&#xff0c;暴露探活接口&#xff1b; GRPC探測 2、CSI鏡像中&#xff0c;增加grpcurl命令&a…

單目標應用:基于吸血水蛭優化器(Blood-Sucking Leech Optimizer,BSLO)的微電網優化(MATLAB代碼)

一、微電網模型介紹 微電網多目標優化調度模型簡介_vmgpqv-CSDN博客 參考文獻&#xff1a; [1]李興莘,張靖,何宇,等.基于改進粒子群算法的微電網多目標優化調度[J].電力科學與工程, 2021, 37(3):7 二、吸血水蛭優化器求解微電網 2.1算法簡介 吸血水蛭優化器&#xff08;B…

【Java Web】Tomcat服務器

目錄 一、Tomcat是什么 二、Tomcat安裝 三、Tomcat相關目錄 四、Web項目標準目錄結構規范 五、Tomcat項目部署方式 六、IDEA關聯本地Tomcat 七、HTTP協議 7.1 http的交互方式 7.1.1 http長連接和短連接 7.1.2 http1.1緩存機制 7.2 http數據報文格式 八、常見響應狀態碼 一、Tom…