我想循环遍历我在Javascript中定义的数组并呈现单选按钮列表.我的代码目前无法正常工作,如下所示(也适用于jsfiddle):
<div data-bind="foreach: options" >
<div>
<input type="radio" name="optionsGroup" data-bind="checked: selected" />
<span data-bind="text: label"></span>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
var optionsList = [
{"value": "a","label": "apple"},
{"value": "b","label": "banana"},
{"value": "c","label": "carrot"}
];
function viewModel() {
var self = this;
self.options = optionsList;
self.selected = ko.observable("a");
self.selected.subscribe(function(newValue) {
alert("new value is " + newValue);
});
}
ko.applyBindings(new viewModel());
Run Code Online (Sandbox Code Playgroud)
如果我的数组是html的一部分,那么它工作正常,看到这个(或jsfiddle):
<div>
<input type="radio" name="optionsGroup" value="a" data-bind="checked: selected" />Apple
</div>
<div>
<input type="radio" name="optionsGroup" value="b" data-bind="checked: selected" />Banana
</div>
<div> …Run Code Online (Sandbox Code Playgroud)