我有一个可在线编辑的数据表。 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>
答案 0 :(得分:1)
如果我正确理解,您想在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>