@KuzmenkoArtem

Передать в дириктиву модель Angular?

Вот объявление моей директивы
app.directive('ngBlur', function() {
		return {
			restrict: 'A',
            require: 'ngModel',
			link: function postLink(scope, element, attrs) {
				element.bind('blur', function () {
					scope.$apply(attrs.ngBlur);
				});
			}
		};
	});

Далее я делаю
<input  type="text" ng-model="Input" ng-blur="changeInput(Input)"  />


И хочу чтобы при onBlur в функцию changeInput попадала модель.
У меня angular.js ранних версий и в стандартных дериктивах ng-blur еще нет
  • Вопрос задан
  • 153 просмотра
Решения вопроса 2
Вам наверное стоит тогда вызвать не $apply, а $eval.
Доступ к ngModel контроллеру можно получить из 4ого параметра link функции:
link: function postLink(scope, element, attrs, ctrl) {
    var ngModel = ctrl;
        element.bind('blur', function () {
             // здесь можно получить параметры из ngModel через методы ngModelController
        });
      }

дока по контроллеру модели: ngModelController
Ответ написан
Комментировать
dmitryvashkevich
@dmitryvashkevich
Crazy developer
https://github.com/angular-ui/ui-event - работает для старых версий ангуляра и реализует работу с событиями включая blur.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы