Делаю пароль проверку директивы для обеспечения пароля и confirm_password полей одинаковы:директива проверки пароля elem.add ошибка
angular
.module('myModule')
.directive('pwCheck', function() {
return {
require: 'ngModel',
link: function (scope, elem, attrs, ctrl) {
var password = "#" + attrs.pwCheck;
elem.add(password).on('keyup', function() {
scope.$apply(function() {
ctrl.$setValidity('pwmatch', elem.val() === $(password).val());
});
});
}
};
});
я получаю сообщение об ошибке при добавлении keyup
обработчика как и Pw PW проверки поля:
TypeError: elem.add is not a function
Так что я удалил .add()
и просто сделать
elem.on('keyup', function() {
Теперь я получаю следующее сообщение об ошибке:
ReferenceError: $ is not defined
Я следующий this codepen. Я правильно установил угловое приложение, и директива записывает html-элементы (elem, attrs, ctrl) в порядке. Поэтому я не уверен, в чем проблема.
Могу ли я выполнить это без jQuery? Я могу сделать 'elem.bind ('keyup', function() {', но я не уверен, как реплицировать 'add()' в пределах углового – Growler
да, вы могли бы достичь этого без DOM .. но что вы подразумеваете под ' .add() 'метод делает –
add() - функция jquery, которая добавляет элементы в существующую группу элементов. но в моем случае событие keyup работает только для подтверждения пароля, где директива добавляется, когда я изменяю значение в поле пароля, которое оно делает не работает. Как я могу это сделать? –