【发布时间】:2012-06-04 01:44:39
【问题描述】:
下面是我的代码,它可以防止用户在输入框中输入超过 10 个字符,并为用户提供剩余字符数的信息。
问题在于,如果用户正在擦除他输入的内容(一个或多个字符),则字符数不会更新。
所以,我的问题是:如何检测用户是否在输入框中进行擦除?
提前致谢!
$('.imageTitle').keypress(function(e) {
var value = $(this).val(),
valueLength = value.length,
set = 10,
remain = parseInt(set - valueLength);
if (remain <= 0 && e.which !== 0 && e.charCode !== 0) {
$('.imageTitle').val((value).substring(0, valueLength - 1))
}
$('#titleCharsLeft').html(' ' + remain);
});
【问题讨论】:
-
我看不懂,如果你必须检测退格,为什么不检查它的键码?
-
如果我突出显示并删除文本会怎样?那么计数器会发生什么?
-
@gopi1410:这(和删除)涵盖了大多数情况,但不是全部 - 选择 + Ctrl-X 是否被视为擦除?