$('.licensetable :text').live('keydown', function (event) {
if ((event.keyCode < 48 || event.keyCode > 57) && (event.keyCode < 96 || event.keyCode > 105) && (event.keyCode != 8)) {
event.preventDefault();
}
});
我只允许数字。这有效。但如果我记录
$(this).val().length
显然“一步到位”。如果我绑定了keyup事件,我会得到正确的数字。但后来我无法禁用按键事件。我的目标是在输入一定数量的数字后禁用输入。希望你明白这个主意。感谢
答案 0 :(得分:6)
您只需在输入字段中设置属性maxlength='X'
即可。
<强> See it in action 强>
答案 1 :(得分:-1)
您可以使用输入字段的maxlength属性,这样用户就无法输入更多的字符(希望我能正确理解您的问题)
然后,如果要在达到maxlength时禁用输入,则可以执行以下操作:
$('input:text').live('keydown', function(event) {
if ((event.keyCode < 48 || event.keyCode > 57) && (event.keyCode < 96 || event.keyCode > 105) && (event.keyCode != 8)) {
event.preventDefault();
}
var maxlength = $(this).attr('maxlength');
if (this.value.length == maxlength) {
$(this).prop('disabled', true);
}
});