0
一度に1つのアイテムしか選択できないチェックリストコントロールを実装したいと思います。基本的にラジオボタングループのように、唯一の違いはアイテムがチェックされないことです。これを達成するためのカスタムバインディングを作成しましたが、ラジオボタンのチェックを外すという意味では機能しますが、viewmodelの値はnullに設定されません。KnockoutJSでラジオボタンのチェックを外す
ko.bindingHandlers.radioCheckbox =
{
init: function (element, valueAccessor, allBindings) {
ko.bindingHandlers.value.init(element, valueAccessor, allBindings);
},
update: function (element, valueAccessor, allBindings) {
(function (element, valueAccessor, allBindings) {
$(element).mousedown(function(e) {
e.preventDefault();
if ($(this).is(':checked')) {
allBindings().checked(null);
} else {
$(this).prop('checked', true);
}
}).click(function(e) {
e.preventDefault();
});
})(element, valueAccessor, allBindings);
}
};
同様の問題は、しかし、受け入れられた解決策は私と同じ問題を持っている、があります。 link