限制用户输入特殊字符和数字

时间:2012-04-12 05:22:23

标签: php javascript validation

如何限制用户在文本框中输入特殊字符和数字。我只想输入字母(输入/粘贴)。

给我示例javascript代码?

3 个答案:

答案 0 :(得分:2)

看看这个问题:Function to return only alpha-numeric characters from string?

这就是你所追求的:

$result = preg_replace("/[^a-zA-Z0-9]+/", "", $inputVar);

如果您之后将其插入数据库,请务必使用mysql_real_escape_string()或预先准备好的语句。

仅仅依靠Javascript进行字符验证是一种非常糟糕的做法,因为JS很容易被禁用,并且未在全球所有设备上启用。

答案 1 :(得分:1)

在提交表单时,验证值是更加用户友好和有效的,而不是阻止某些characers的进入。在此之前,您真的不关心字段的值是什么,并且您不需要对输入值的方式进行特殊处理。它可能被粘贴,拖动,自动输入,由插件或脚本或其他方法输入。

一个简单的例子:

</script>

<form onsubmit="return validate(this);">
  <input type="text" name="foo">
  <input type="submit">
</form>

<script type="text/javascript">
function validate(form) {
  var re = /^[a-z,A-Z]+$/i;

  if (!re.test(form.foo.value)) {
    alert('Please enter only letters from a to z');
    return false;
  }
}
</script>

答案 2 :(得分:1)

你可以试试这个,我现在正在使用它来做我当前的项目

$(document).ready(function(){

/* Allow integers only in form input field with id #selector */
$('#selector').keyup(function () { 
    this.value = this.value.replace(/[^0-9\.]/g,'');
  });   
 })

它也不允许复制粘贴,但缺点是右击然后粘贴

免责声明:我刚从互联网上找到它