允许文本框仅在jquery中使用大写,小写字母和空格

时间:2015-02-28 14:30:44

标签: jquery

我想使用jQuery创建一个文本框,只允许使用小写(a-z),大写(A-Z)字母和空格。

当我在这里搜索时,我发现了这段代码,但它只允许使用小写字母。

<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>

所以我尝试使用/[^a-zA-Z ]/g,但我无法弄明白。

希望有人可以帮助我。

谢谢。

2 个答案:

答案 0 :(得分:1)

您可以使用Regex上的i标志使其不区分大小写,并\s允许空格。最后你还可以使用一个函数来修改当前值,以节省必须缓存的选择器。试试这个:

$('.alphaonly').bind('keyup blur', function() { 
    $(this).val(function(i, val) {
        return val.replace(/[^a-z\s]/gi,''); 
    });
});

Example fiddle

根据您的jQuery版本,您还应将bind()更改为on()

答案 1 :(得分:0)

var pattern = /^[a-z]+$/;

该模式将匹配一个或多个小写字母字符,而不匹配其他字符。