提交时禁用按钮,出错时重新启用
AngularJS Disable button on submit - re enable on error
我在动态禁用按钮时遇到问题。
我的API休眠2秒来模拟一个超级慢的连接,我希望看到提交按钮在提交时被禁用,重新启用自己。
HTML -手动禁用按钮工作…
<button data-ng-disabled="false" data-ng-click="submit()">Schedule Appointment</button>
HTML -这不起作用
<button data-ng-disabled="{{ isSaving }}" data-ng-click="submit()">Schedule Appointment</button>
控制器:
app.controller('ScheduleController', function ($scope, $http, $window, $timeout)
{
$scope.formData = {};
$scope.isSaving = false;
$scope.submit = function() {
$scope.isSaving = true;
console.log('Schedule Appointment Pressed, isSaving', $scope.isSaving);
$http.post('/api/v1/schedule/', $scope.formData)
.success(function(data) {
// Do Stuff
})
.error(function(data){
$scope.isSaving = false;
console.log('Error, isSaving', $scope.isSaving);
$scope.errors = data.errors;
});
}
});
一切正常,console.log正确输出isSaving。问题是,按钮实际上不会被禁用,除非我硬编码ng-disabled="true"到html.
问题在于你的HTML。在访问ng指令中的作用域变量时不需要{{}}。
<button ng-disabled="isSaving" ng-click="submit()">Schedule Appointment</button>
希望能有所帮助。
相关文章:
- 如何在读取XLS/XLSX本地文件时,使用IE的javascript代码启用未标记为安全的ActiveX控件
- 如何在 API 调用后和 if 语句中启用提交按钮
- 语义ui如何使用javascript启用或禁用下拉列表
- IE6在启用/禁用文本字段上闪烁
- 传单中如何在更改基层时启用/禁用覆盖层
- 根据字段的值启用按钮
- 如何使用javascript函数在gridview中按行启用/禁用复选框
- 如何禁用和启用css规则
- 淘汰赛.JS'启用'长度绑定条件不起作用
- 在新类 jQuery 上启用可拖动
- JavaScript 启用新的 HTML5 按钮属性:formaction、formmethod
- jQuery 性能问题,通过为新元素启用拖放
- Javascript——如何在不使用新运算符的情况下启用静态方法,同时防止使用实例函数
- 如何在使用窗口后启用浏览器选项卡.打开以启动一个新窗口
- 创建一个表单提交按钮,启用“在新窗中打开”;当用户右键点击时
- 检查打开新选项卡时是否启用了弹出窗口阻止程序
- 如何在加载新页面时启用jquery标签/单选按钮
- 有没有一种好方法来启用“在新窗口中打开链接”?在dom节点上的浏览器菜单选项,而不使链接跟随单击
- 如何启用超链接打开模态对话框,同时也允许在同一链接上的新选项卡中打开
- Jquery:如果其他滑动开关被启用(可见),在启动新的滑动开关之前关闭