javascript - 通过更改对象属性使按钮禁用

标签 javascript angularjs angularjs-ng-disabled

单击按钮时,我不想禁用所有按钮以防止任何其他操作。 为此,我使用了 request.isProcessing bool 值。 在开始时,function approve(request) 我将 request.isProcessing 设置为 true,最后设置为 false

但这行不通。 (对于 ng-repeat 中的请求 request.isProcessing 没有改变)

是因为我在不同的 scope 还是什么?

<div class="one-third" ng-repeat="request in pendingRequests track by request.id">
   ...
   <div class="button-container">
       <button ng-click="approve(request);" ng-disabled="request.isProcessing" class="btn btn-primary">Confirm<i ng-hide="request.isProcessing" class="fa fa-check"></i><span ng-show="request.isProcessing" class="spinner no-hover"><a><i class="fa-li fa fa-spinner fa-spin"></i></a></span></button>
       <button ng-click="reject(request);" ng-disabled="request.isProcessing" class="btn btn-default pull-right" am-hide-request-resolve-div>Reject <i ng-hide="request.isProcessing" class="fa fa-times"></i><span ng-show="request.isProcessing" class="spinner no-hover"><a><i class="fa-li fa fa-spinner fa-spin"></i></a></span></button>
   </div>
</div>

$scope.approve = function (request) {
        request.isLoading = true;
        //functionality of approving
        request.isLoading = false;
}

最佳答案

在 javascript 中,您的变量是 isLoading,而在您的 HTML 中,变量是 isProcessing。所以我想你应该重命名其中一个。

关于javascript - 通过更改对象属性使按钮禁用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37343380/

相关文章:

javascript - Angularjs ng-禁用

angularjs - Controller 中的样式表链接

angularjs - 如何禁用 ANGULARJS 中的按钮

javascript - 为什么我的按钮没有使用 ng-disabled 禁用?

javascript - 与谷歌地图 API 的标记数组作斗争

angularjs - Angular 2 (4),Webpack 站点无法在 IE 11 的服务器上运行

javascript - Angular ng-repeat 反向

JavaScript函数参数传递数组

javascript - 学习 React.js

javascript - React-Router,必需的 prop `to` 未在 `Link` 中指定