9

私は本当に愚かだと感じますが、それを機能させることはできません:)

http://jsfiddle.net/btkmR/

この単純な Fiddle を作成したのは、大きなプロジェクトで何かが欠けていないことを証明するためだけです。

HTML:

<div>
    Preferred flavor
    <div><input type="radio" name="flavorGroup" data-bind="checked: cherryOn" /> Cherry</div>
    <div><input type="radio" name="flavorGroup" data-bind="checked: almondOn" /> Almond</div>
    <div><input type="radio" name="flavorGroup" data-bind="checked: mgOn" /> Monosodium Glutamate</div>
</div>

JS:

var viewModel = {
    cherryOn: ko.observable(true);
    almondOn: ko.observable(false);
    mgOn: ko.observable(false);
};

ko.applyBindings(viewModel);

開始時に選択されていることを期待していCherryます..

4

3 に答える 3

22

Knockout のドキュメント ( http://knockoutjs.com/documentation/checked-binding.html ) から:

ラジオ ボタンの場合、KO は、パラメーター値がラジオ ボタン ノードの value 属性と等しい場合にのみ、要素がチェックされるように設定します。

例: http://jsfiddle.net/btkmR/2/

<div>
    Preferred flavor
    <div><input type="radio" name="flavorGroup" value="cherry" data-bind="checked: flavor" /> Cherry</div>
    <div><input type="radio" name="flavorGroup" value="almond"  data-bind="checked: flavor" /> Almond</div>
    <div><input type="radio" name="flavorGroup" value="Monosodium"  data-bind="checked: flavor" /> Monosodium Glutamate</div>
</div>

var viewModel = {
    flavor: ko.observable("cherry")
};

ko.applyBindings(viewModel);
于 2013-04-18T19:11:32.720 に答える