data-bind="checked: someBool"
私の無線入力をチェックしていない非常に単純です。
<input type="radio" data-bind="checked: someBool" />radio
koコード...
var data = { someBool: true };
var vm = ko.mapping.fromJS(data);
ko.applyBindings(vm);
ラジオは未チェックです。何か不足していますか?
data-bind="checked: someBool"
私の無線入力をチェックしていない非常に単純です。
<input type="radio" data-bind="checked: someBool" />radio
koコード...
var data = { someBool: true };
var vm = ko.mapping.fromJS(data);
ko.applyBindings(vm);
ラジオは未チェックです。何か不足していますか?
ラジオボタンをマップするための値属性を追加する必要があります。また、値はブール値ではなく、この後の文字列になります。次の拡張機能を使用して、ラジオ ボタンにブール値を使用します。(ライブ: http://jsbin.com/exokav/8 ):
ko.bindingHandlers.checkedAsBool = {
init: function (element, valueAccessor, allBindingsAccessor) {
var observable = valueAccessor(),
interceptor = ko.computed({
read: function () {
var val = ko.utils.unwrapObservable(observable);
return ((val !== null) && (typeof val !== "undefined") ? val.toString() : val);
},
write: function (newValue) {
observable(newValue === "true");
},
owner: this
});
ko.applyBindingsToNode(element, { checked: interceptor });
}
};
RP Niemeyer によるこの回答に基づいています。