从textarea获取带字符串(“Line no。”)的行号?

时间:2013-02-10 01:05:24

标签: javascript jquery html textarea

我使用了一个显示textarea行号的代码,它可以和我一起工作。但是我想在旁边显示一个字符串,所以输出将是: 行号:3

这是我用过的代码:

http://jsfiddle.net/S2yn3/1/

,功能是:

$(function() {
    $('#test').keyup(function() {
        var pos = 0;
        if (this.selectionStart) 
            pos = this.selectionStart;
        } else if (document.selection) {
            this.focus();

            var r = document.selection.createRange();
                if (r == null) {
                pos = 0;
            } else {

                var re = this.createTextRange(),
                rc = re.duplicate();
                re.moveToBookmark(r.getBookmark());
                rc.setEndPoint('EndToStart', re);

                pos = rc.text.length;
            }
        }
        $('#c').html(this.value.substr(0, pos).split("\n").length);
    });
});

谢谢你们

1 个答案:

答案 0 :(得分:2)

您的代码正在计算从第一个字符到光标的'\ n'个字符数。如果您正在寻找换行符的总数,请更改...

$('#c').html(this.value.substr(0, pos).split("\n").length);

$('#c').html('Line no. ' + this.value.split("\n").length);