验证输入字段和块字符

Validate input field and block characters

本文关键字:字符 字段 输入 验证      更新时间:2024-02-22

大家好,我有一个输入字段,我想实时验证插入的字符。我希望这个输入字段只接受字母、数字和一个空格。如果插入了例如*,脚本将删除这些字符。

问候

输入字段:

onkeyup="check(this,'onlyletter')" onblur="check(this,'onlyletter')

关于JS:

var r={
'onlyletter': // i need correct regular expression
}
function check(o,w){
// i need function
}

我有:Abc123’123*,但我接受Abc123 123

使用原始JS:

线索是在方法转换

<html>
<head>
    <script>    
        function transform(elem) {
            var v = elem.value;
            var n = "";
            //loop it to cut of more than 1 -- e.g. on copy & paste
            if(v.length) {
                n = v.slice(-1);
                if( !isNaN(parseFloat(n)) && isFinite(n) ) {
                    elem.value = v.substring(0, v.length - 1);
                }
            }
       }
    </script>
</head>
<body>
    <input
        type="text"
        name="date"
        placeholder="Text only!"
        onkeyup="transform(this);"
        maxlength="10"
    >
</body>
</html>

使用jquery的另一种方法

屏蔽文本字段以仅接受字母。现在可以通过多种方式实现。一个是查询掩码插件

你只需要查询,查询掩码,然后它是1行代码;)

演示:

<html>
<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript" src="js/jquery.mask.min.js"></script>
<script type="text/javascript">
      $(document).ready(function(){ 
          //masked input for alphabets only 
          //constrained to 20 characters in length without spaces                      
          $("#myTextField").mask("SSSSSSSSSSSSSSSSSSSS");
      });
</script>
<body>
  <br><input type = "text" id="myTextField" name="Text Field"></br>
</body>
</html>