我有一个输入字段,我想将其限制为仅包含字母数字(A-Z、a-z、0-9)字符,最小字段长度为 5,最大长度总计为 15 个字符。
有谁知道我如何使用 jQuery 做到这一点?
我正在尝试使用 digitalBush 的 jQuery 输入掩码 - http://digitalbush.com/projects/masked-input-plugin/
问题是除非我输入 15 个字符,否则该字段将变为空白。如果我在输入字段中输入“012345678912345”(15 个字符),则该值将被存储并且没问题。
但是,如果我输入“12345”作为用户名,当该输入框失去焦点时,其值将恢复为空白。我可以在“定义”或选项中更改某些内容来解决此问题吗?
非常感谢您的帮助:)
蒂姆
这样做是这样的:“*”是字母数字,“?”后面的任何内容是可选的。
jQuery(function($){
$("#elem").mask("*****?**********");
});
另外,如果您想根据字符长度更改蒙版,就像我一样。 发现了这个好方法:
var arr = ['HomePhone',
'CellPhone',
'EmergencyPhone'
];
for (var i in arr)
{
$('input[name='+arr[i]+']').mask("999-999-9999?9")
.keydown(function () {
var $elem = $(this);
var a = this.value.replace(/\D/g, "").length;
setTimeout(function () {
var n = $elem.val().replace(/\D/g, "").length;
if (n !== a && (n === 10 || n === 11)) {
var mask = (n === 11 ? "9999-999-9999" : "999-999-9999?9");
$elem.mask(mask);
}
}, 1);
});
}
我过去也遇到过同样的问题。我找到了其他库的解决方案:https://github.com/eduardovillao/masky-js