我想限制所有符号在html中输入我的表单字段。
这是我的代码......
<script>
$('#location').keypress(function (e) {
var regex = new RegExp("[^a-zA-Z0-9]+$");
var str = String.fromCharCode(!e.charCode ? e.which : e.charCode);
if (regex.test(str)) {
return true;
}
e.preventDefault();
return false;
});
</script>
但该代码不允许任何空格甚至使用删除键。我希望一切顺利,但不要任何符号(即$#@%^!&#39;&#34; [] {}()等......)
答案 0 :(得分:0)
您可以删除keyup
上的无效字符。
$('#location').keyup(function(e){
$(this).val($(this).val().replace(/[^a-zA-Z0-9\s]/g, '');
});
否则,您必须指定要允许的键的keyCode
。
http://www.asciitable.com/
答案 1 :(得分:0)
只需获取字母和数字的范围。
48 - 57(0-9)
65 - 90(A-Z)
97 - 122(a-z)
<script>
$('#location').bind('keypress', function (e) {
if (e.which < 48 ||
(e.which > 57 && e.which < 65) ||
(e.which > 90 && e.which < 97) ||
e.which > 122) {
e.preventDefault();
}
});
</script>