2015-10-22 93 views
4

我試圖將單選按鈕的「checked」狀態綁定到我的JSON對象中的布爾值,但它沒有被設置。aurelia - 綁定到單選按鈕的值

模板:(jobReadinessItems是 「文件」 的陣列)

<tbody> 
    <tr repeat.for="item of jobReadinessItems"> 
    <td><input id="have" name="readiness" type="radio" checked.bind="item.Have" /></td> 
    <td><input id="need" name="readiness" type="radio" checked.bind="item.Need" /></td> 
</tr> 

項目(JSON):

{  
    Have: false, 
    Need: true 
} 

CS

public class JobReadinessItemDto 
    { 

    public bool Have { get; set; } 
    public bool Need { get; set; } 

    } 

但是,如果我結合這樣它顯示的值(但當然我不能設置它):

checked.bind="item.Have ? 'on' : 'off'" 

爲什麼它顯示正確的「開/關」,但不是真/假?

http://plnkr.co/edit/G5Cw9i?p=preview

+0

我不明白你的模型:確實有,需要有獨特的?所以如果「有」是真的,那麼「極品」必須是假的,反之亦然?在這種情況下,爲什麼你使用兩個bool屬性而不是一個枚舉屬性對此進行建模? – nemesv

+0

感謝您的建議,它們是獨佔的,而枚舉將是更好的方法。 – proggrock

回答

4

已經在奧裏利亞文檔看看備忘單:

http://aurelia.io/hub.html#/doc/article/aurelia/framework/latest/cheat-sheet

搜索「單選」,你會發現一些例子,可能是一個有益的參考。有一件事跳出我馬上雖:

<tr repeat.for="item of jobReadinessItems">

這應該遍歷數組,但jobReadinessItems是一個對象:

{  
    Have: false, 
    Need: true 
} 

您應該改變這是一個數組:

[ 
    {value: 'Have', checked: false}, 
    {value: 'Need', checked: true} 
] 

...並在您的模板中相應地綁定它,或者更改您的模板以直接綁定到對象值。希望有所幫助。

編輯:新小抄網址是 http://aurelia.io/docs/fundamentals/cheat-sheet/