在按钮上切换类(选择/取消选择)
Toggling the class on a button (select/deselect)
我使用ng repeat从数据中动态创建按钮。一次只能在一行中单击一个按钮。我现在想做的是能够取消选择单击的按钮,但也可以根据按钮是否单击来更改按钮的类别。我试图用下面的代码来实现这一点,但显然不起作用。我的javascript不是最强的,所以我希望有人能给我一点帮助。谢谢
<div class="form-horizontal" data-ng-repeat="item in schedule.Events">
<div class="form-group">
<div class="col-xs-12 col-md-6 col-lg-6">
<button type="button" class="btn form-control"
data-ng-class="[pickChosen == 1 ? 'btn-success' : 'btn-default']"
data-ng-click="pickChosen = buttonToggle(1);">
</button>
</div>
<div class="col-xs-12 col-md-6 col-lg-6">
<button type="button" class="btn form-control"
data-ng-class="[pickChosen == 2 ? 'btn-success' : 'btn-default']"
data-ng-click="pickChosen = buttonToggle(2);">
</button>
</div>
</div>
</div>
角度代码:
.controller('dashController', function ($scope, $http) {
$scope.buttonToggle = function(buttonNumber) {
if (pickChosen == 0) {
pickChosen = buttonNumber;
} else {
pickChosen = 0;
}
}
})
您的代码几乎很好。只是一件小事。对于ngClick删除分配部分,它看起来应该只是:
data-ng-click="buttonToggle(1);"
然后在控制器中使用this
关键字参考当前范围pickChosen
:
$scope.buttonToggle = function(buttonNumber) {
this.pickChosen = buttonNumber === this.pickChosen ? 0 : buttonNumber;
}
演示:http://plnkr.co/edit/JyoBvFOcT9sQYIJVIJyn
您需要将pickChosen更改为$scope.pickChosen。此外,您的ng类应该是:
{ 'btn-success': pickChosen == 1, : 'btn-default': pickChosen != 1 }
{ 'btn-success': pickChosen == 2, : 'btn-default': pickChosen != 2 }
如果这两个都不起作用,请对你的问题进行处理,这样更容易回答。
看起来您也在使用Bootstrap。使用Button组并让Bootstrap处理类怎么样?或者,使用Angular UI和Radio按钮。
相关文章:
- 通过在d3中单击来选择/取消选择
- 复选框选择/取消选择触发器第一次工作,但在随后的尝试中失败
- 选择/取消选择复选框,该复选框未按预期使用.coneast('table').find('tbo
- 在angular.js中选择取消选择树结构
- Javascript函数用于选择/取消选中radgrid标头模板中的所有复选框
- 一个变量,多个复选框选择/取消选择 jQuery
- 基于下拉选择的单选选择/取消选择
- 选择/取消选择花式树插件上所有具有相同ID的节点
- 选择2 取消选择所有值
- 使用 JQuery 多次选择取消选中复选框
- jQuery:需要知道在变更事件中选择/取消选择了哪个选项
- 带有选择/取消选择和汇总选项的表格
- 在按钮上切换类(选择/取消选择)
- 关闭浏览器选项卡时,如何在确认框中默认选择“取消”
- jqxTreeGrid如果我单击一行中的特定单元格,则禁用对该行的选择/取消选择
- 如何使用 JavaScript/jQuery 选择/取消选中复选框
- 即使用户选择“取消”,我如何保留FileDialog输入值?(ASP.Net/Javascript)
- 使用JQuery取消选择/取消聚集输入字段
- 如何将JavaScript应用于引导程序btn组以选择/取消选择子按钮元素
- 如何选择/取消选择所有克隆节点