达到输入 maxLength 后,Ng 样式更改边框颜色

小姐A

当输入达到限制时,我试图更改边框颜色。我正在用 ng-style 和条件表达式来做这件事。在我的代码中,当它应该是黑色时,它给了我一个红色边框。当它达到极限时它会是红色的。

什么是最好的解决方案?

var vm = this;
vm.valueLength = "1000";
 <textarea rows="4" cols="40" ng-model="vm.formData.text" ng-style="{'border-color' : vm.valueLength > 950 ? 'red':'black'}" maxlength="{{vm.valueLength}}" class="form-control" id="text" placeholder="Bericht..."></textarea>

维兹

vm.valueLength > 950由于您将 的值设置vm.valueLength为 1000,因此条件将始终为真。因此您需要做的是检查输入长度是否大于 950。您可以使用ng-modelvalue来执行此操作vm.formData.text.length > 950

var app=angular.module('plunker', []);
app.controller('ListCtrl',ListCtrl);
function ListCtrl($scope) {
  
var vm = this;
vm.valueLength = 1000;
vm.formData ={};
  
  
}
<!doctype html>
<html ng-app="plunker">

<head>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.6.5/angular.js"></script>
</head>

<body ng-controller="ListCtrl as vm">
    <div>
        <textarea rows="4" cols="40" ng-model="vm.formData.text" ng-style="{'border-color' : vm.formData.text.length > 950 ? 'red':'black'}" maxlength="{{vm.valueLength}}" class="form-control" id="text" placeholder="Bericht..."></textarea>
    </div>
</body>

</html>

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章