我正在使用AngularJS构建表单,并且发现一些我不理解的行为。
当我将ng-minlength=5
分配为输入属性时,AngularJS取消绑定(bind)该值,直到该值长于所需值为止。
这对我来说不方便,因为我想告诉用户他们使用user.lifestory.length
输入了多少内容。
为什么AngularJS这样工作?如何防止Angular在值无效时解除绑定(bind)?<label for="lifeStory">Life story:<input name='lifeStory' type="text" ng-model='user.lifeStory' ng-minlength='5' required></input></label>
一个示例在这里:http://jsfiddle.net/J67jm/3/
通过填写生活故事字段,您可以看到我在说的行为。
最佳答案
您可以使用{{myForm.lifeStory.$viewValue}}
获取lifeStory的当前viewValue(尚未绑定(bind)到模型)。
这是解决您的问题的示例代码。
<span>Your life story needs to be at least 5 characters. You have entered {{myForm.lifeStory.$viewValue.length}} charaters.</span>
引用jsfiddle版本-http://jsfiddle.net/J67jm/9/