如何计算多行编辑框中的行数?

时间:2017-05-19 17:16:33

标签: javascript xpages

这是我的多行编辑框

<xp:inputTextarea id="taID"></xp:inputTextarea>

我想计算用户输入的行数,例如按钮单击。 行以新行分隔。不确定我是否可以使用任何类型的数组,因为编辑框可能包含多达200K行。 使用JavaScript计算它的最佳方法是什么?

2 个答案:

答案 0 :(得分:0)

计算textarea内容中的分隔线数量。请注意,它还添加1作为最后一个,所以如果你想省略,你可以减去1到总数:

function getBreakLines() {
  var content = document.querySelector("#txtarea").value;
  var numberOfLineBreaks = (content.match(/\n/g)||[]).length;
  alert(numberOfLineBreaks);
}
<textarea rows="10" cols="50" id="txtarea">
dsakjdjsal
dajsldkasjldkas
</textarea>
<br>
<button onclick="getBreakLines()">
get number of break lines
</button>

因此,在您的情况下,使用#taID

更改选择器

答案 1 :(得分:0)

您可以使用非阻止功能扩展重复帖子:

var somestring="abcdefgh\naghdfgakhsgfasgd";
var counted=0;
(function rec(i){
  for(a=Math.min(i+100,somestring.length);++i<a;){
  if(somestring[i]==="\n") counted++;
  }
  if(i===somestring.length) alert(counted) else setTimeout(rec,0,i+1);
})(0);