使用jQuery的文本区域键向下事件问题

时间:2011-04-26 16:34:07

标签: javascript jquery

我们在尝试实现类似于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();
                }
            }
        });

希望你能帮忙

1 个答案:

答案 0 :(得分:1)

将您的代码更改为keyup而不是keydown。在将文本添加到textarea之前触发Keydown。一旦你改变它似乎工作。