谷歌浏览器; Textarea最大字符

时间:2014-08-07 12:23:37

标签: javascript jquery html google-chrome

所以我正在开发一个Phonegap应用程序,并且遇到了textarea和maxlength的问题。

当在Google Chrome上构建Phonegap应用时,可以使用电话本身的换行符/输入来写入超过255个字符。

继承人我的HTML:

<textarea class="content" wrap="physical" rows="10" cols="50" maxlength="255"></textarea>

继续我的JS / jQuery:

$('.content').keyup( function(e){

    /*var char = 255 - $(this).val().length;
    if(char < 0) char = 0;
    $('.char_left').text(char);*/

    var y = 255;
    var x = $(this).val();
    x = x.replace(/(\r\n|\n|\r)/g,"");
    x = x.length;
    if (x >= y) {
        $('.char_left').text('Limit!');
    } else {
        var ch = y - x;
        $('.char_left').text(ch);
    }

});

我已经注释了我使用的早期版本,并且在默认的android浏览器中工作。

2 个答案:

答案 0 :(得分:1)

尝试此操作:检查textarea的值的长度是否大于指定的maxlength,然后返回false,否则不执行任何操作。

$(function(){
    var maxlength = $('.content').attr('maxlength');
    $('.content').keyup(function(){
       if($(this).val().length > maxlength)
           return false;
    });
});

<强> Demo

答案 1 :(得分:1)

这有效:

  MaxLength = 255;

  $('.content').keyup(function(e)
  {
       if ($(this).val().length > MaxLength)
       {
           $(this).val($(this).val().substring(0, MaxLength));
      }
  });

它将确保无论如何,它都不会超过255.它基本上会在MaxLength之后切断任何东西。