0
我在Internet上搜索如何将一个字段值传递给另一个字段自定义指令。但我没有成功。下面是代码:如何将一个或多个字段值传递给另一个字段自定义指令
module.directive("confirmPassword", function(){
return {
restrict: 'A',
require: '?ngModel',
scope: {
cpassword: '=confirmPassword'
},
link: function(scope, element, attrs,ctrl){
if(!ctrl) return;
console.log(scope.cpassword);
ctrl.$validators.confirmPasswd = function(modelValue, viewValue) {
var value = modelValue || viewValue;
console.log(attrs.confirmPassword);
console.log(value);
if(angular.isDefined(value)){
if(scope.cpassword.test(value)) {
scope.confirmStrength = 'valid';
ctrl.$setValidity("confirmInvalid",true);
return true;
} else {
scope.confirmStrength = 'invalid';
ctrl.$setValidity("confirmInvalid",false);
return false;
}
}
return false;
}
}
};
});
在我申请这个自定义指令到现场,如:
<input type="password" confirm-password="registerData.password" ng-model="registerData.confirmPassword">
,但我没有得到期望的输出。我在这里错过了一些东西。请帮助我一个人。我正在使用angularJs 1.4版本。
请找Plunker
您使用隔离范围并定义cpassword变量。你应该试试看: – Errorpro
好的,我会试试这个。 – Mandy
这是行不通的。 – Mandy