javascript - 输入字段 : limit the number of letters and numbers typed

标签 javascript jquery forms

有没有办法限制允许在输入字段中输入的字母和数字的数量?我只想以任何顺序输入 3 个字母和 2 个数字。

使用 jQuery Mask Plugin 是否可行? ?还是不行?

在这里查看我的 jsFiddle:http://jsfiddle.net/0akoL2x2/

html:

<input type="text" class="preview" size="30" placeholder="Preview text" class="text-input" maxlength="5" autofocus />

j查询:

jQuery('.personalisation').mask("XXXZZ", {
        translation: {
            'X': {pattern: /[A-Za-z0-9]/},
            'Z': {pattern: /[A-Za-z0-9]/},
    }

最佳答案

使用数据属性怎么样?我们称它为 data-temp:

<input type="text" class="alnum" maxlength="5" data-temp="">

使用$(document).on('input'... 监控所有变化(甚至是动态元素),如果新值超过最大值则立即恢复。否则,让它发生,并将 data-temp 更新为这个新值。

$(document).on('input', '.alnum', function(){
    var txt = $(this).val();
    if(
        txt.replace(/[^0-9]/g,"").length > 2 ||
        txt.replace(/[^A-Za-z]/g,"").length > 3 ||
        txt.replace(/[a-zA-Z0-9]/g,"").length != 0
      ){
        $(this).val( $(this).data('temp') );
        return;
    }
    $(this).data('temp', txt);
});

JSFiddle demo

关于javascript - 输入字段 : limit the number of letters and numbers typed,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32400665/

相关文章:

javascript - jquery 将焦点放在动态内容上?

javascript - 如何在两个图像之间切换

c# - 正确重命名 C# WinForms 中的表单

php - 带有自定义表单的 Google CSE

python - Django 中的表单占位符无法正确显示

JavaScript 封装数据的闭包可以被规避吗?

javascript - Javascript 中的参数传递令人困惑

javascript - 使用 RxJS 的 switchMap 限制请求

javascript - 将 ajax 响应分配给全局变量

javascript - 如果 ul 中的任何 li 有类