2013-02-10 87 views
2

我用的是从显示textarea的行数的代码,并将其与me.But工作我想表明,旁边一个字符串,输出将是: 行号:3从textarea获取带有字符串(“行号”)的行号?

这里是代码我已经使用:

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); 
    }); 
}); 

谢谢你们

+2

http://jsfiddle.net/S2yn3/5/ – 2013-02-10 01:08:30

+1

@OneTrickPony你为什么不发布作为答案? – Chandu 2013-02-10 01:10:10

+1

这是基本的字符串连接...这应该是封闭的,没有upvoted ...关于相同功能的 – 2013-02-10 01:16:44

回答

2

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

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

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