2016-02-01 2 views
1

Я пытаюсь добавить динамические атрибуты min/maxlength, используя ng-minlength & & ng-maxlength.Динамический ng-minlength/ng-maxlength

Например,

<input type="text" ng-minlength="myMin" ng-maxlength="myMax"> 

И в мой контроллер ...

$scope.myMin = 1; 
$scope.myMax = 2; 

Однако, это не работает. В конечном счете, я хочу иметь возможность обновлять эти атрибуты и учитывать их значения. Возможно ли это?

Plunk пример:

http://plnkr.co/edit/KkUvFjSZkvFwqZVZAIiS?p=info

ответ

2

Вы должны добавить модель нг. Имейте в виду, что это не будет ограничивать ввод. Только давать вам классы, когда значения max и min действительны/недействительны.

<input type="text" ng-model="number" ng-minlength="myMin" ng-maxlength="myMax"> 

app.controller('MainCtrl', function($scope) { 
    $scope.myMin = 1; 
    $scope.myMax = 5; 
    $scope.number = 1; 
}); 

Если вы просто хотите, чтобы ограничить вход можно использовать обычный HTML:

<input type="text" ng-model="number" maxlength="{{myMax}}" > 

Я создал вилку с обеими examples.

+1

Интересно, что в моей собственной работе у меня была назначенная модель, но она не работала так, как ожидалось. Когда я изменил синтаксис второго примера, он сработал. Большое спасибо за Вашу помощь. – developthewebz

+0

Рад, что я могу помочь! :) –

Смежные вопросы