0
我想實施一次只能選擇一個項目的清單控制。基本上像一個單選按鈕組,唯一的區別是這些項目可以被取消選中。我創建了一個自定義綁定來實現這一點,它在取消選中單選按鈕方面「起作用」,但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