2016-08-30 62 views
14

我想知道如何使複選框檢查,如果該值爲真,並取消選中,如果虛假Angular2複選框檢查,如果布爾是真實的Angular2

Adult <input type="checkbox" value="{{person.is_adult}}"> 

{{person.is_adult}}是boolean

可有人請建議什麼?由於

回答

13

{{}}做字符串插值和stringifies truefalse和角默認使用屬性綁定,我以爲物業預計布爾值不是字符串:

<input type="checkbox" [checked]="person.is_adult"> 

這可能工作以及

<input type="checkbox" attr.checked="{{person.is_adult}}"> 

因爲使用屬性綁定時,瀏覽器可能會將其從屬性(只能是字符串)轉換爲布爾值,以便將其讀入屬性中。

這也是checked而不是value

您還可以使用ngModel

<input type="checkbox" [ngModel]"person.is_adult" name="isAdult"> 
<input type="checkbox" [(ngModel)]"person.is_adult" name="isAdult"> 

單向或雙向綁定。
如果您使用ngModel,請確保您已經輸入FormsModule

+0

使用'value'對我來說不起作用只有'checked'起作用。 – select

+0

對,我沒有注意屬性名稱(從問題中複製),但只注意綁定中的錯誤。 –

11

你缺少括號各地檢查

<input type="checkbox" [checked]="person.is_adult"> 

希望這有助於!