angular 4 bootstrap 4单选按钮组,按钮不会保持检查状态

时间:2017-07-17 14:10:27

标签: html angular typescript bootstrap-4

我在角度4反应形式中有以下代码:

    <div class="btn-group" data-toggle="buttons">
         <label class="btn btn-primary" *ngFor="let item of list;let i=index" >
         <input type="radio" name="someName" [value]="item" (click)="onSelectItem(i)" formControlName="someName" [checked]="isChecked(i)"> {{item}}
         </label>
    </div>

onSelectItem(i)将'i'的值赋给变量,isChecked(i)仅当i =该变量时返回true

然而,点击它们时按钮不会保持检查状态,它们保持相同的外观,这让我发疯。

非常感谢修复,  英语是我的第二语言, 谢谢你,美好的一天

2 个答案:

答案 0 :(得分:1)

您的plunker缺少使Bootstrap运行所需的代码。将所有这些行添加到index.html:

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/css/bootstrap.min.css" integrity="sha384-rwoIResjU2yc3z8GV/NPeZWAv56rSmLldC3R/AZzGRnGxQQKnKkoFVhFQhNUwEyJ" crossorigin="anonymous">
<script src="https://code.jquery.com/jquery-3.1.1.slim.min.js" integrity="sha384-A7FZj7v+d/sdmMqp/nOQwliLvUsJfDHW+k9Omg/a/EheAdgtzNs3hpfag6Ed950n" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js" integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/js/bootstrap.min.js" integrity="sha384-vBWWzlZJ8ea9aCX4pEW3rVHjgjt7zpkNpZk+02D9phzyeVkE+jo0ieGizqPLForn" crossorigin="anonymous"></script>

Working plnkr

Code from Bootstrap 4

答案 1 :(得分:1)

如果您删除&#34; data-toggle="buttons"&#34;,则isChecked功能将起作用。