2017-07-17 88 views
1

我有一個角4反應形式以下代碼:角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

但是,當我點擊按鈕時,按鈕不會保持檢查狀態,它們只是保持相同的外觀,它讓我發瘋。

修復程序將不勝感激, 英語是我的第二語言, 感謝你和美好的一天

+0

你可以用plunker重現相同的效果嗎? – SaiUnique

+0

https://embed.plnkr.co/QJHmXFVNnAvFliVkF6zc/ –

+0

@TomBarat闖入者有什麼問題?我沒有看到它會被束縛住。那麼我們需要在這種情況下實際刪除css樣式。所以我不明白你目前的造型與外觀有什麼不同? – Alex

回答

1

你plunker缺少必要的代碼,以使引導運行。所有這些行添加到您的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

0

如果去掉 「data-toggle="buttons"」,該isChecked功能將正常工作。