JS修改Input的Value值

一、基礎操作

在JavaScript中,我們可以通過操作Input元素的value屬性來修改輸入框中的值。例如:

  
const inputElem = document.querySelector('#myInput');
inputElem.value = '新的值';
  

在上面的代碼中,我們首先通過document.querySelector()方法獲取了一個id為myInput的Input元素,並將其賦值給了inputElem變量。接着,我們通過修改inputElem的value屬性將輸入框的值修改為”新的值”。這就是最基礎的JS修改Input Value的操作。

二、獲取、設置輸入框的值

除了直接設置某個Input元素的值之外,我們還可以通過代碼獲取、設置所有輸入框的值。

獲取所有輸入框的值:

  
const allInputs = document.querySelectorAll('input'); // 獲取所有輸入框
const allValues = Array.from(allInputs).map(input => input.value); // 獲取所有輸入框的值
console.log(allValues); // 輸出值
  

上面的代碼首先使用document.querySelectorAll()方法獲取了頁面中所有input元素並將其賦值給allInputs。接着,我們使用Array.from()方法將allInputs轉換為一個數組。最後,我們調用map()方法獲取所有輸入框的值並打印到控制台上。

設置所有輸入框的值:

  
const allInputs = document.querySelectorAll('input'); // 獲取所有輸入框
Array.from(allInputs).forEach(input => input.value = '新的值'); // 設置所有輸入框的值
  

上面的代碼首先得到所有的Input元素,然後通過循環將其value屬性賦值為”新的值”。

三、實時更新輸入框的值

有時候,我們需要實時獲取用戶的輸入,並對輸入內容進行處理。在JavaScript中,我們可以通過監聽輸入框的input事件來實現這一功能。

監聽input事件並獲取輸入內容:

  
const inputElem = document.querySelector('#myInput');
inputElem.addEventListener('input', e => {
  const inputValue = e.target.value; // 獲取用戶輸入
  console.log(inputValue); // 輸出用戶輸入
});
  

上面的代碼首先獲取id為myInput的輸入框,並添加了一個input事件的監聽器。當用戶輸入時,回調函數會被觸發,並將用戶輸入的內容保存在inputValue變量中。我們可以在回調函數中對inputValue進行處理並對其賦值。

四、格式化輸入框的值

在一些場景中,我們需要對用戶輸入的內容進行格式化,例如手機號碼、金錢等。在這種情況下,我們可以通過對用戶輸入的內容進行格式化,並將格式化後的值賦值給輸入框來達到格式化輸入框值的目的。

格式化手機號碼:

  
function formatPhoneNum(phoneNum) {
  const reg = /^(\d{3})\d+(\d{4})$/; // 匹配前三位和後四位
  return phoneNum.replace(reg, '$1****$2');
}

const inputElem = document.querySelector('#myInput');
inputElem.addEventListener('input', e => {
  const inputValue = e.target.value; // 獲取用戶輸入
  const newValue = formatPhoneNum(inputValue); // 格式化輸入值
  e.target.value = newValue; // 將格式化後的值賦值給輸入框
});
  

上面的代碼定義了一個formatPhoneNum()函數,該函數通過正則表達式匹配手機號碼,並對其進行格式化。接着,我們監聽輸入框的input事件,並在回調函數中調用formatPhoneNum()方法來對用戶輸入進行格式化。最後,我們將格式化後的值重新賦值給輸入框,實現了輸入框值的格式化。

五、通過ajax獲取輸入框的值並回填

在一些場景中,我們需要通過ajax獲取一些動態數據,並將獲取到的值更新到輸入框中。這時,我們可以使用JS來實現這一功能。

通過ajax獲取數據並回填到輸入框:

  
function getUserInfo(id) {
  return fetch(`/api/user/info?id=${id}`)
    .then(res => res.json());
}

const inputElem = document.querySelector('#myInput');
inputElem.addEventListener('blur', async e => {
  const inputValue = e.target.value; // 獲取用戶輸入
  const userInfo = await getUserInfo(inputValue); // 獲取用戶信息
  e.target.value = userInfo.phone; // 將用戶信息填回輸入框
});
  

上面的代碼首先定義了一個異步的getUserInfo()方法,該方法通過fetch()方法獲取用戶信息,並返回一個Promise對象。接着,我們監聽輸入框的blur事件,並在回調函數中調用getUserInfo()方法來獲取輸入框的值對應的用戶信息。最後,我們將獲取到的用戶信息的電話號碼填回到輸入框中。

六、總結

上文對JS修改Input Value的幾個場景進行了詳細的說明。通過這些例子,我們可以發現,利用JavaScript來修改Input的Value值十分的靈活方便,可以滿足各種業務場景的需求。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/182131.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-11-24 06:18
下一篇 2024-11-24 06:18

相關推薦

  • JS Proxy(array)用法介紹

    JS Proxy(array)可以說是ES6中非常重要的一個特性,它可以代理一個數組,監聽數據變化並進行攔截、處理。在實際開發中,使用Proxy(array)可以方便地實現數據的監…

    編程 2025-04-29
  • Python input參數變量用法介紹

    本文將從多個方面對Python input括號里參數變量進行闡述與詳解,並提供相應的代碼示例。 一、基本介紹 Python input()函數用於獲取用戶輸入。當程序運行到inpu…

    編程 2025-04-29
  • 解析js base64並轉成unit

    本文將從多個方面詳細介紹js中如何解析base64編碼並轉成unit格式。 一、base64編碼解析 在JavaScript中解析base64編碼可以使用atob()函數,它會將b…

    編程 2025-04-29
  • Node.js使用Body-Parser處理HTTP POST請求時,特殊字符無法返回的解決方法

    本文將解決Node.js使用Body-Parser處理HTTP POST請求時,特殊字符無法返回的問題。同時,給出一些相關示例代碼,以幫助讀者更好的理解並處理這個問題。 一、問題解…

    編程 2025-04-29
  • Python字典輸出key對應的value

    本文將從多個方面詳細闡述Python字典輸出key對應的value,包括獲取單個和多個key的value值、如何判斷一個key是否存在、如何遍歷所有的key-value對和如何刪除…

    編程 2025-04-28
  • t3.js:一個全能的JavaScript動態文本替換工具

    t3.js是一個非常流行的JavaScript動態文本替換工具,它是一個輕量級庫,能夠很容易地實現文本內容的遞增、遞減、替換、切換以及其他各種操作。在本文中,我們將從多個方面探討t…

    編程 2025-04-28
  • JS圖片沿着SVG路徑移動實現方法

    本文將為大家詳細介紹如何使用JS實現圖片沿着SVG路徑移動的效果,包括路徑製作、路徑效果、以及實現代碼等內容。 一、路徑製作 路徑的製作,我們需要使用到SVG,SVG是可縮放矢量圖…

    編程 2025-04-27
  • input代碼中代表什麼

    在web開發中,input是最基礎的輸入控件之一,常用來收集用戶的數據並提交至服務器進行處理。本文將從多個方面詳細闡述input代碼中代表什麼。 一、type屬性 在HTML中,i…

    編程 2025-04-27
  • Python input列表

    本文將從多個角度詳細介紹Python怎麼input列表。 一、基礎概念 Python中的列表是一種有序的數據序列,可以包含任意類型的數據。當我們需要從用戶獲取一組數據時,可以使用i…

    編程 2025-04-27
  • Python用input賦值用法介紹

    本文將從多個方面詳細闡述Python中如何使用input函數來賦值,以幫助讀者更好的理解和應用該函數。 一、基礎使用 1、input函數的作用是從鍵盤輸入一行文本,並返回一個字符串…

    編程 2025-04-27

發表回復

登錄後才能評論