什么是忽略输入中字符的最佳方法

时间:2020-06-18 09:16:17

标签: javascript

如果我提供类似he7ck的输入 并且我希望它忽略任何不是字母的内容,因此它只将输入作为heck怎么做?

3 个答案:

答案 0 :(得分:0)

您可以使用以下简单表达式:

document.getElementById("myInput").addEventListener("input",function(){
     var str = this.value;
     this.value = str.replace(/[^a-zA-Z\s]+/g, "")
});
<input id="myInput"/>

答案 1 :(得分:0)

您可以使用Regex将所有不需要的内容替换为""。如果要完全禁止用户在输入过程中输入数字,请保持原样。否则,如果您希望它获得他们的完整输入,然后应用限制,请将input.oninput函数更改为input.onchange

var input = document.getElementById('input');

input.oninput = function() {
  let data = this.value;
  if (data.match(/[0-9]/g)) {
     console.log(data);
     data = data.replace(/[0-9]/g, "");
     this.value = data;
  }
}
<input id="input">

答案 2 :(得分:0)

input.oninput = (e) => e.target.value = e.target.value.replace(/[^a-z\s]+/gi, "");
<input id="input"/>