0

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

问候

在输入字段上:

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

4

1 回答 1

0

使用原始 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>
于 2014-02-16T08:42:03.490 回答