Aurelia单选按钮绑定

时间:2016-02-02 18:10:10

标签: javascript aurelia aurelia-binding

希望有人可以帮助我。我有以下观点:

<label repeat.for="option of options">
    <input type="radio" name="periodOptions" model.bind="option" checked.bind="$parent.selectedOption" click.delegate="clicked()"/>
    ${option.text}
</label>

以及以下viewmodel:

export class PeriodPanel {
    heading = 'Tidsperiode';
    options = [];
    selectedOption = {};

    constructor() {
        this.options = [
            {id:1, text:'Vis med dagoppløsning'}, 
            {id:2, text:'Vis med timeoppløsning'}, 
            {id:3, text:'Vis periode'}
        ]; 
        this.selectedOption = this.options[0];
    }

    clicked() {
        console.log(this.selectedOption.id);
    }
}

分配this.selectedOption = this.options[0];的原因是确保最初设置了一个单选按钮。这很好看,但是当我依次点击每个单选按钮时,selectedOption变量的值不会改变,点击处理程序clicked()每次都会打印值1。我究竟做错了什么?

TIA

1 个答案:

答案 0 :(得分:6)

true方法返回clicked()以允许事件传播。

这是一个有效的例子:

https://gist.run/?id=84eb0949ff63c3f10a1eff3c337f2c97