是否可以使用值绑定(bind)将 Knockout 可观察属性绑定(bind)到单选按钮?
这是我正在尝试做的,但值最终是字符串“[Object object]”,而不是我的可观察属性的实际实例:
<input type="radio" name="vehicleGroup" data-bind="checked: vehicleGroupViewModel().selectedGroupOption , value:vehicleGroupViewModel().car" />
<input type="radio" name="vehicleGroup" data-bind="checked: vehicleGroupViewModel().selectedGroupOption , value:vehicleGroupViewModel().truck" />
这是我正在使用的 View 模型:
var VehicleGroupViewModel = function(){
var self = this;
this.selectedVehicleGroup = ko.observable();
this.selectedGroupOption = ko.observable();
this.selectedGroupOption.subscribe(function (newVal) {
self.selectedVehicleGroup(newVal);
}
this.selectedGroup = ko.observable();
this.car = ko.observable(new VehicleViewModel());
this.truck = ko.observable(new VehicleViewModel());
}
var VehicleViewModel = function(){
this.name = ko.observable();
}
所以最后我希望 Car 或 Truck VehicleViewModel 位于 selectedVehicleGroup observable 中。
最佳答案
记录在案here 只有 Select 节点能够将任意 JavaScript 对象绑定(bind)到一个值。其他输入需要字符串值,这就是您的值返回“[Object object]”的原因。
你仍然可以做你想做的事,但你必须手动映射一个键并自己找到合适的对象。这是一个演示的 fiddle :
关于javascript - Knockout observable 是否可以将数据绑定(bind)到单选按钮的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10044189/