我们在尝试实现类似于twitter上的字计数器时遇到问题,当用户在文本字段中键入时,该计数器会递减。不幸的是,这很糟糕,因为一旦你通过退格键删除了所有的字符,就会显示你只剩下84个字符(除非你再次点击退格键)。如果它是删除按钮,即使它在文本末尾的屏幕上没有删除任何内容,计数器也会关闭(我猜它会删除导致它在示例中说84而不是85的'不可见'字符之前)。所有我想要的,如果它像twitter上的那个一样运作
/* Limit textarea for cancelation policy to 85 characters*/
$('.counter').text(85-($('#txtCpolicy').val().length));
$('#txtCpolicy').keydown(function(e) {
var current = $(this).val().length;
$('.counter').text(85 - ($('#txtCpolicy').val().length));
if(current >= 85) {
if(e.which != 0 && e.which != 8) {
e.preventDefault();
}
}
});
希望你能帮忙
答案 0 :(得分:1)
将您的代码更改为keyup而不是keydown。在将文本添加到textarea之前触发Keydown。一旦你改变它似乎工作。