我有一个文本区域,我已经应用了角度的最大长度指令:
<textarea placeholder="Quote text here" ng-model="quote.text" ng-maxlength="400" name="text"></textarea>
现在我也通过使用有角度的ng-show
和ng-hide
指令显示字数:
<div class="row word-count">
<h5>Word count :</h5>
<h5 ng-show="quote.text.length > 0">{{quote.text.length}}</h5>
<h5 ng-hide="quote.text.length > 0" class="ng-hide">0</h5>
</div>
问题是,一旦字数超过max-length指令,ng-show
和ng-hide
就会自动触发为反转。有没有办法阻止它?
答案 0 :(得分:1)
如何使用古老的HTML maxlength
?
<textarea placeholder="Quote text here" ng-model="quote.text." name="text" maxlength="400"></textarea>
<div class="row word-count">
<h5>Word count :</h5>
<h5 ng-show="quote.text.length > 0">{{ quote.text.length }}</h5>
<h5 ng-hide="quote.text.length > 0" class="ng-hide">0</h5>
</div>
我个人不理解ng-maxlength
的必要性,因为它只是返回错误,但允许您继续输入!
答案 1 :(得分:0)
这是角度验证的预期行为。如果验证失败,则相应的模型将返回undefined。
您可以在Angular网站here上试用。
此外,如果您需要支持IE8 / IE9,here is an example of own maxlength directive。