每行javascript textarea字符限制

时间:2013-06-19 11:07:09

标签: javascript

我有一个每行有限字符的textarea。它的功能很好。

function limitRow(){
    var count = 1;
    var charsPerLine = row; // 30 characters  
    var maxLines = 20; 

    $('.AD_Text_textarea').keydown(function (e) {
        var v = $(this).val(),
        vl = v.replace(/(\r\n|\n|\r)/gm, '').length,
        lineCount = $(this).val().split("\n").length;

        if (parseInt(vl / count) >= charsPerLine) {
            if (lineCount >= maxLines) {
                return false;
            }
            $(this).val(v + "\n");
            count += 1;
        }
    });
}

我的问题是,如果我进入第1行,在键入例如4行文本并键入例如光标位置4某些文本后,行计数器计数开头并在60个字符后打破该行并跳转第4行的结尾。
我该如何解决这个问题? 我希望,很明显。 (对不起我的英语)

1 个答案:

答案 0 :(得分:0)

试试这个

    var count = 1;
    var charsPerLine = 30; // 30 characters  
    var maxLines = 2;
    $('.AD_Text_textarea').keydown(function (e) {
        var this_input = $(this);
        var value = this_input.val().split('\n');

        if (value.length < maxLines) {
            if (value[parseInt(value.length) - 1].toString().length > charsPerLine) {
                alert(value.length.toString());
                this_input.val(this_input.val() + '\n');
            }

        }
        else {
            return false;
        }
    });