使用controllerAs显示ng-model长度

时间:2017-09-04 19:32:54

标签: angularjs

我使用controllerAs,在ng-model中编写文本,然后保存在数据库中,我遇到一个问题,因为我无法查看ng-model length。如何显示ng-model="seeMore.comment"长度?

<textarea class="form-control" id="text-area-comment" name="comment" ng-model="seeMore.comment" ng-minLength="10" required></textarea>  
<ul ng-show="(!AddCommentForm.comment.$pristine && AddCommentForm.comment.$error.minlength)" class="help-block">
    <li>{{seeMore.comment.length}} to go.. </li>   
</ul>

3 个答案:

答案 0 :(得分:0)

在您的控制器中,您可以访问“seeMore.comment”并使用长度函数查找长度。

答案 1 :(得分:0)

看看下面的演示 在此演示中,我的模型名称是 myText ,因此要显示我正在使用myText.length

的长度

var app = angular.module('myApp', []);
app.controller('MyController', ['$scope', function($scope) {
  $scope.title = 'Hello world';
}]);
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-controller='MyController' ng-app="myApp">
  <div>{{title}}</div>
  <input type="text" ng-model="myText" /> Length:{{myText.length}}
</div>

答案 2 :(得分:0)

我想你有一个像这样的DOM ..你有ctrl as vm部分 所以我修改了您使用前vm发布的部分代码。所以现在你可以 访问对应的控制器别名模型。

<强> HTML

<div ng-controller="ctrl as vm">
   <form name="vm.AddCommentForm.comment">
        <textarea class="form-control" id="text-area-comment" name="comment" ng-model="vm.seeMore.comment" ng-minLength="10" required></textarea>  
        <ul ng-show="(!vm.AddCommentForm.comment.$pristine && 
    vm.AddCommentForm.comment.$error.minlength)" class="help-block">
        <li>{{vm.seeMore.comment.length}} to go.. </li>   
    </ul>
   </form>
</div>

<强> CONTROLLER

.controller('ctrl', function($scope){
     var vm = this;         
     vm.seeMore = {comment:''};
});