更新md-maxlength值

时间:2017-07-26 18:04:30

标签: angularjs angularjs-material

当我更新" item.MaxLength"值不会影响输出,仍然将原始值显示为md-maxlength。我的代码出了什么问题?感谢。

输入-1:我希望它能改变md-maxlength值,并输入" input-2"

<input type="text" ng-model="item.Desc" md-maxlength="{{item.MaxLength}}">

输入-2:我想用&#34; item.MaxLength&#34;

来控制输入-1 md-maxlength
<input type="number" ng-model="item.MaxLength">

1 个答案:

答案 0 :(得分:0)

显然,几乎没有办法动态更新md-maxlength值。但是你的问题有解决方法。你可以删除&amp;在更改长度设置字段的值后重新渲染输入元素。在ng-if&amp;上添加md-input-container通过使用$ watch或在长度字段上使用ng-change函数来相应地更改其值的长度字段。

<md-input-container ng-if="showN">
    <label>Name</label>
    <input  type="text" md-maxlength='{{view.len}}' ng-model="view.name" />
</md-input-container>
<md-input-container>
    <label>Len</label>
    <input type="number"  ng-model="view.len" />
</md-input-container>

在控制器中有:

$scope.$watch('view.len', function(n,o){
    $scope.showN = false;
    $timeout(function(){
        $scope.showN = true;
    });
});

工作人员:https://plnkr.co/edit/fLh0VfuTUjjmGo8PRioy?p=preview