2016-11-24 74 views
0

我正在计算文本区域中的字符并显示剩余字符。我也在使用ng-trim。但是新线路占用2个字符,我能够从长度减去一个字符。如何解决这个问题?角度计算文字区中换行符的2个字符

<textarea ng-model="desc" ng-init = "desc= ''" ng-trim="false" placeholder="Type your description here" maxlength="1000" role="textarea"></textarea> 
<p>Characters remaining: {{1000-desc.length}} </p> 

我可以计算换行符并减去长度。如果我可以,那么我怎么能在html中获得新的行?

+0

? –

+0

抱歉复制粘贴错误 –

+0

你的任务是什么?你想排除字符数中的所有换行符吗? –

回答

1

如果你想删除所有空格,包括文字换行数,你可以定义一个函数在控制器上做到这一点:

$scope.desc = ''; 
    $scope.length = 0; 
    $scope.$watch('desc', function(value) { 
     $scope.length = value.replace(/\s/g, '').length; 
    }); 

,然后简单地使用它一样,在HTML:

<textarea ng-model="desc" placeholder="Type your description here" maxlength="1000" role="textarea"></textarea> 
<p>Characters remaining: {{length}}</p> 

为什么您使用,而不是``desc`见utFormData.updateDescription` this plunker

+0

抱歉,我无法理解-1。尽管如此。 –

+0

@AbelD,_new行占用2个字符 - 实际上占用一个字符。 [在这里尝试](https://plnkr.co/edit/p0TEcyJfsiJszDBL2wh1?p=preview)放入'1',然后按下[Enter]和[2]。你会看到3个字符的长度。 –

+0

@AbelD,更新了我的回答 –