Установить атрибут максимальной длины ввода html5 с AngularJS

0

Я хочу установить максимальную длину ввода через AngularJS, и когда пользователь достиг максимальных символов, тогда никакие новые символы не должны быть добавлены на вход.

У меня есть вход, который selecteddata.Type.Value ng- selecteddata.Type.Value

Максимальное значение символа сохраняется в selecteddata.Type.MaxLength

Я добавил атрибут html5 maxlength, как показано ниже:

<input type="text" ng-model="selecteddata.Type.Value" maxlength="{{selecteddata.Type.MaxLength}}" />

Это работает так, как я хочу, когда пользователь достигает максимальных символов, невозможно добавить новое, но не устанавливает выбранный файл.Type.Value..

Почему это не работает? Есть ли способ AngularJS сделать это? Я читал о ngMaxlength, но он не ведет себя так, как я хочу. Нужно ли мне написать специальную директиву для выполнения этой работы? Какие-либо предложения?

  • 0
    Директива, которая делает это stackoverflow.com/questions/17075969/…
  • 0
    ngMaxlength docs.angularjs.org/api/ng/directive/ngMaxlength
Показать ещё 4 комментария
Теги:

3 ответа

0
Лучший ответ

Скрипка для моей версии: https://jsfiddle.net/U3pVM/25383/

  <div ng-app>
      <div ng-controller="TodoCtrl">
       <input type="text" ng-model="selecteddata.Type.Value" maxlength="{{selecteddata.Type.MaxLength}}" />

      selecteddata.Type.Value-{{selecteddata.Type.Value}}
      </div>
    </div>

function TodoCtrl($scope) {
  $scope.selecteddata={
    'Type':{
      'MaxLength':5
    }
  }
}
0
<input type="text" data-ng-model="selecteddata.Type.Value" data-ng-maxlength="selecteddata.Type.MaxLength" />

Приложите ng- ко всем угловым директивам.

  • 1
    Я знаю, как я писал в вопросе, что ngMaxLength существует, но он не ведет себя так, как я хочу. Я хочу блокировать символы при достижении максимального значения, которое не делает ngMaxLength
0

вы можете использовать атрибут по умолчанию AngularJS, ng-maxlength

    <input type="text" ng-model="model" id="input" name="input" ng-maxlength="maxlength" />

Попробуйте этот PLNKR: https://plnkr.co/edit/6ztQAixx9KkHBO4a3qD3?p=preview

Ещё вопросы

Сообщество Overcoder
Наверх
Меню