我有一个可在线编辑的数据表。其中一个可编辑的列是md-input字段。我可以很容易地添加md-maxlength="80"
来显示角色计数器。鉴于此数据表是使用UI-Grid完成的(此处代码不相关),它将计数器应用于该列中的所有md输入。我真正想要的只是在焦点上显示角色计数器。这是使用Angular 1.X.
到目前为止我已经得到了这个,但我不知道ng-class
的表达式是否可以接受除CSS类之外的任何内容。
<md-input
ng-init="focused=false"
ng-class="{'md-maxlength=80': focused}"
ng-focus="focused=true"
ng-blur="focused=false"
...
</md-input>
如果我理解正确,你想在md-maxlength="80"
是focused
时添加true
属性。现在你试图将属性设置为CSS类,这是没有意义的,因为你不能有<div class="myClass md-maxlength='80'">
为什么不有条件地设置md-maxlenth
属性的值?在80
时将值设置为focused=true
,否则将其设置为null
。可能将它设置为0
或其他一些对md-input
控制有意义的值,因为我不熟悉它。
<md-input
ng-init="focused=false"
md-maxlength="focused ? 80 : null"
ng-focus="focused=true"
ng-blur="focused=false"
...
</md-input>