代码之家  ›  专栏  ›  技术社区  ›  alamar

显示文本区域的当前行号和列号

  •  6
  • alamar  · 技术社区  · 16 年前

    2 回复  |  直到 13 年前
        1
  •  9
  •   Aung Myat Hein    10 年前

    当我需要textarea的当前行号和当前列数时,我这样解决:

    <textarea  onkeyup="getLineNumberAndColumnIndex(this);" onmouseup="this.onkeyup();" >
    </textarea>
    
    function getLineNumberAndColumnIndex(textarea){
         var textLines = textarea.value.substr(0, textarea.selectionStart).split("\n");
         var currentLineNumber = textLines.length;
         var currentColumnIndex = textLines[textLines.length-1].length;
         console.log("Current Line Number "+ currentLineNumber+" Current Column Index "+currentColumnIndex );
      }
    
        2
  •  8
  •   Rob W jminkler    13 年前

    您可能想查看以下两个链接:

    http://www.dedestruct.com/2008/03/22/howto-cross-browser-cursor-position-in-textareas/ [原始来源已不存在,修改后的链接指向Web Archive的最新版本]

    https://developer.mozilla.org/En/DOM:Selection

    ..一旦你有了一个选择(文本中的光标索引),你就可以按换行符拆分文本,从而得到行号。您可以通过从行首确定索引来获取列