保存按钮,当它们是错误消息时,将被禁用
<user-textbox name="txtbox" error-Message="errormsg"></user-textbox>
<button id="modalSaveButton" type="button" ng-click="save()" data-dismiss="{{ errormsg ? '' : 'modal' }}" value="Save"></button>
指令
link(scope) {
scope.errormsg = false;
function disableSave (n, o) {
const eleModalSave =
angular.element(document.querySelector('#modalSaveButton'));
if(scope.errormsg) {
eleModalSave.attr('disabled',"");
//save button should get disable if errormsg is true
} else {
eleModalSave.removeAttr('disabled');
}
}
scope.$watch('errormsg',disableSave, true);
}
O / P:保存按钮即使出现错误也不会被禁用
答案 0 :(得分:0)
所以在指令标记中你写了:
<user-textbox name="txtbox" error-Message="errormsg"></user-textbox>
您能否在标记中将属性名称更改为错误消息。 所以它看起来像:
<user-textbox name="txtbox" error-message="errormsg"></user-textbox>
Angular会将范围内的这个转换为$ scope.errorMessage, 这意味着您的指令声明应如下所示:
.directive('userTextbox', function(){
scope : {
errorMessage :'='
},
link : ['$scope', function($scope){
$scope.$watch('errorMessage', function(newVal, oldVal) {
})]
}
})