我想让一个文本框只允许使用jQuery的字母(a-z)。有什么例子吗?
发布于 2010-06-05 18:56:01
<input name="lorem" onkeyup="this.value=this.value.replace(/[^a-z]/g,'');">
对于喜欢粘贴而不是打字的邪恶用户,可以与onblur
相同;)
+漂亮的jQuery代码:
<input name="lorem" class="alphaonly">
<script type="text/javascript">
$('.alphaonly').bind('keyup blur',function(){
var node = $(this);
node.val(node.val().replace(/[^a-z]/g,'') ); }
);
</script>
发布于 2010-06-05 19:04:40
如果键代码不在'a'..'z‘范围内,则只允许使用小写字母,请在事件对象上调用preventDefault
。如果应允许大写,请在65..90或'A'..'Z‘之间检查。
或者,使用市面上众多input mask plugins中的一种。
参见example。
$(<selector>).keypress(function(e) {
if(e.which < 97 /* a */ || e.which > 122 /* z */) {
e.preventDefault();
}
});
发布于 2015-11-04 15:18:05
下面演示了使用Jquery只允许字母a-z:
$(function() {
$('#txtFirstName').keydown(function(e) {
if (e.shiftKey || e.ctrlKey || e.altKey) {
e.preventDefault();
} else {
var key = e.keyCode;
if (!((key == 8) || (key == 32) || (key == 46) || (key >= 35 && key <= 40) || (key >= 65 && key <= 90))) {
e.preventDefault();
}
}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<input id="txtFirstName" value="">
https://stackoverflow.com/questions/2980038
复制相似问题