小编use*_*608的帖子

如何将数组渲染为单选按钮列表?

我想循环遍历我在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)

arrays foreach radio checked knockout.js

10
推荐指数
2
解决办法
2万
查看次数

标签 统计

arrays ×1

checked ×1

foreach ×1

knockout.js ×1

radio ×1