Anugularjs ng-disabled 对按钮元素没有按预期工作

Anugularjs ng-disabled not working as expected for a button element

我创建了一个新按钮,该按钮应在加载页面时启用,并应在保存页面数据时禁用(有一个保存按钮)。所以基本上只要启用保存按钮,就应该禁用这个新按钮。

Angular代码:

<input id="save" class="btn " type="button"
                        value="SAVE BUTTON" ng-click="saveData()" ng-disabled="isSaveButtonDisabled"  /> 
<input id="create" class="btn " type="button"                   
                    value="NEW BUTTON" ng-click="createNewButton()" ng-disabled="isCreateButtonDisabled" /> 

在控制器中,它正在附加到范围:

$scope.isSaveButtonDisabled= isSaveButtonDisabled;
$scope.isCreateButtonDisabled= isCreateButtonDisabled;

并且有两个函数定义了这个属性的值:

function isSaveButtonDisabled(){
        $scope.isSaveButtonDisabled= true;  
}
function isCreateButtonDisabled(){
        $scope.isCreateButtonDisabled= false;   
}

但是创建按钮仍然处于禁用状态,无论如何。

我错过了什么?

你可以在一个ng-click

中调用两个函数

试试这个方法。

$scope.isSaveButtonDisabled= function(){
        $scope.isSaveButtonDisabled= true;
       $scope.isCreateButtonDisabled= false;     
}

$scope.isCreateButtonDisabled= function(){
        $scope.isCreateButtonDisabled= false; 
        $scope.isSaveButtonDisabled= true;  
}

请在 HTML 中更改您的代码,例如

<input id="save" class="btn " type="button"
                        value="SAVE BUTTON" ng-click="isSaveButtonDisabled();saveData();" ng-disabled="isSaveButtonDisabled"  /> 
<input id="create" class="btn " type="button"                   
                    value="NEW BUTTON" ng-click="isCreateButtonDisabled();createNewButton();" ng-disabled="isCreateButtonDisabled" /> 

对于这两个按钮,您是否定义了与 'true/false' 布尔属性同名的函数?如果是这样,那么您需要将两个包装函数更改为不同的东西(可能是 disableSaveButton()、disableCreateButton())并在现有的 saveData() / createNewButton()

中调用这两个函数