Angular - 根据行数设置文本区域行

Angular - Set textarea rows base on the number of rows

我正在尝试将 textarea 行 属性 设置为文本中 rows 的数字。 这是 textarea:

<textarea rows = "countRowsInText(response.simLog)" cols = "200" style = "overflow:hidden">{{response.simLog}}</textarea>

Ant countRowsInText() 函数:

$scope.countRowsInText = function(text){
  var numerOfRowsInText = text.split(\/r\n|\r|\n).length; //rows number - 500
  console.log(numerOfRowsInText); //row number
  return numerOfRowsInText;
}

它不起作用,只显示 2 行。 谢谢。

初步猜测,{{}} 被遗漏了,应该是:

<textarea rows = "{{countRowsInText(response.simLog)}}" cols = "200" style = "overflow:hidden">{{response.simLog}}</textarea>

在您的控制器中,您可以使用:

 var txtArea = document.getElementById('ptest').value.split('\n');    
    $scope.lines = txtArea.length;

那么你就可以在文本区使用线条

<textarea rows = "{{lines}}" cols = "200" style = "overflow:hidden">{{response.simLog}}</textarea>