angularjs - 如果至少选中一个复选框,则应启用 Angular JS + Button 怎么做?

标签 angularjs

我想要一个只有在一组复选框中的至少一个被选中时才会启用的按钮,类似于 http://jsfiddle.net/chriscoyier/BPhZe/76 处的 fiddle :

var checkboxes = $("input[type='checkbox']"),
    submitButt = $("input[type='submit']");

checkboxes.click(function() {
    submitButt.attr("disabled", !checkboxes.is(":checked"));
});

我想使用 AngularJs 来实现它。

最佳答案

向您的 Controller 添加一个函数,检查是否选中了任何复选框。如果单选按钮被选中,它的值将为真。然后,在 HTML 中使用 ng-disabled按钮上的指令并将其设置为等于函数的结果。示例:

Controller :

$scope.isCheckboxChecked = function() {
    return ($scope.checkbox1 || $scope.checkbox2 || $scope.checkbox3);
}

HTML:

<button type="button" ng-disabled="!isCheckboxChecked()">My Button</button>

如果您发布您已经尝试过的代码将会很有帮助。我的回答是假设您已经有了使用 ng-model 指令的功能复选框,并且只是在寻找如何在选中任何按钮时禁用按钮。

更新:

如果您还没有将复选框绑定(bind)到您的 Controller ,这里有一个示例。请注意使用 ng-model 绑定(bind)到范围内的 $scope.checkbox1 或 $scope.checkbox2 变量。

<input type="checkbox" ng-model="checkbox1">Checkbox 1
<input type="checkbox" ng-model="checkbox2">Checkbox 2

关于angularjs - 如果至少选中一个复选框,则应启用 Angular JS + Button 怎么做?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22863256/

相关文章:

php - 数据未插入数据库

javascript - UI-Router AngularJS Controller 无法处理状态

javascript - 在 ng-repeat 内的表达式中调用的 Angularjs 函数没有被调用?

javascript - 如何访问 <img> 标签中来自 ng-controller 的 'src' 数据?

javascript - 如何使复选框默认选中?

javascript - gulp-angular-templatecache 模块不可用

javascript - 如何使用 ng-repeat 和 Ionic 框架显示嵌套的 JSON 对象?

带有多个标记的 AngularJS 谷歌地图

javascript - 修复 header 插件在 Angular 数据表中不起作用

javascript - 传递具有独立作用域的函数参数和使用 Angular 指令共享作用域