首頁 > web前端 > 前端問答 > javascript 禁止輸入

javascript 禁止輸入

王林
發布: 2023-05-12 10:16:06
原創
1058 人瀏覽過

JavaScript 禁止輸入

隨著網際網路的不斷發展,JavaScript 已成為現代網頁設計不可或缺的一部分。 JavaScript 可以加強網頁的互動性,讓使用者更方便進行資料輸入和操作。然而,在某些情況下,我們需要透過 JavaScript 來實現一些限制使用者輸入的功能。例如,禁止使用者輸入特定字元或限制使用者輸入的字元數等等。本文將透過講解一些 JavaScript 技巧,來幫助你實現這些功能。

禁止輸入特定字元

如果你希望在使用者輸入框中禁止輸入某些特定字符,可以透過 JavaScript 的正規表示式來實現。例如,如果你希望使用者只能輸入數字,你可以在使用者輸入框的onkeypress 事件中使用以下程式碼:

function checkNumber(event) {
  var charCode = event.keyCode;
  if (charCode < 48 || charCode > 57) {
    event.preventDefault();
  }
}
登入後複製

在這段程式碼中,我們首先取得了使用者輸入的字元的ASCII 碼,然後判斷這個字元是否為數字。如果不是數字,則呼叫 event.preventDefault() 方法來阻止預設的字元輸入事件。

類似地,如果你希望禁止使用者輸入其他特定的字符,只需修改判斷條件即可。例如,如果你希望禁止使用者輸入字母和標點符號,則可以使用以下程式碼:

function checkCharacter(event) {
  var charCode = event.keyCode;
  if ((charCode >= 65 && charCode <= 90) || (charCode >= 97 && charCode <= 122) || (charCode >= 33 && charCode <= 47) || (charCode >= 58 && charCode <= 64) || (charCode >= 91 && charCode <= 96) || (charCode >= 123 && charCode <= 126)) {
    event.preventDefault();
  }
}
登入後複製

在這段程式碼中,我們將判斷條件修改為了判斷字元是否為字母或標點符號。

禁止輸入空格

有時候,我們希望使用者在輸入資料時不能輸入空格。可以透過偵測使用者輸入的字元是否為空格來實現。例如,你可以在使用者輸入框的onkeypress 事件中使用以下程式碼:

function checkWhiteSpace(event) {
  var charCode = event.keyCode;
  if (charCode === 32) {
    event.preventDefault();
  }
}
登入後複製

在這段程式碼中,我們判斷使用者輸入的字元是否為空格,如果是則呼叫event.preventDefault() 方法來阻止預設的字元輸入事件。

禁止輸入超過指定字元數

如果你想限制使用者在輸入框中輸入的字元數,可以透過偵測使用者輸入框中的字元數來實現。例如,你可以在使用者輸入框的oninput 事件中使用以下程式碼:

function limitInput(event, maxLength) {
  var input = event.target.value;
  if (input.length > maxLength) {
    event.target.value = input.slice(0, maxLength);
  }
}
登入後複製

在這段程式碼中,我們首先取得使用者輸入框中的值,並判斷其字元數是否超過了指定的最大字元數(maxLength)。如果超過了,則截取前 maxLength 個字符,並將其寫回輸入框中。

完整範例

以下是一個完整的範例,它示範如何使用JavaScript 實作禁止輸入特定字元、禁止輸入空格和禁止輸入超過指定字元數等功能:

<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>JavaScript 禁止输入</title>
</head>
<body>
  <form>
    <label>只能输入数字:</label>
    <input type="text" onkeypress="checkNumber(event)">
    <br><br>
    <label>不能输入空格:</label>
    <input type="text" onkeypress="checkWhiteSpace(event)">
    <br><br>
    <label>最多只能输入 5 个字符:</label>
    <input type="text" oninput="limitInput(event, 5)">
  </form>

  <script>
    function checkNumber(event) {
      var charCode = event.keyCode;
      if (charCode < 48 || charCode > 57) {
        event.preventDefault();
      }
    }

    function checkWhiteSpace(event) {
      var charCode = event.keyCode;
      if (charCode === 32) {
        event.preventDefault();
      }
    }

    function limitInput(event, maxLength) {
      var input = event.target.value;
      if (input.length > maxLength) {
        event.target.value = input.slice(0, maxLength);
      }
    }
  </script>
</body>
</html>
登入後複製

在這個範例中,我們建立了一個表單,其中有三個輸入框,分別用於示範禁止輸入數字、禁止輸入空格和禁止輸入超過指定字元數的功能。每個輸入框都綁定了對應的 JavaScript 事件處理函數。

結論

透過使用 JavaScript,我們可以輕鬆實現限制使用者輸入的各種功能。這不僅可以提高網站的安全性和資料質量,還能為使用者提供更好的互動體驗。我們希望這篇文章可以幫助你更好地使用 JavaScript 來實現你的網頁設計。

以上是javascript 禁止輸入的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板