Comment rendre un tableau sous forme de liste de boutons radio?

Je voudrais parcourir un tableau que je définis dans mon Javascript et afficher une liste de boutons radio. Mon code qui ne fonctionne pas actuellement, et il est comme suit (également sur jsfiddle):

<div data-bind="foreach: options" >
    <div>
        <input type="radio" name="optionsGroup" data-bind="checked: selected" />
        <span data-bind="text: label"></span>
     </div>    
</div>
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());

Si mon tableau est une partie de l'html, puis il fonctionne très bien, voir ce (ou 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>
     <input type="radio" name="optionsGroup" value="c" data-bind="checked: selected" />Carrot
</div>
<div data-bind="text: selected">
</div>
function viewModel() {
    var self = this;
    self.selected = ko.observable("a");
    self.selected.subscribe(function(newValue) {
        alert("new value is " + newValue);
    });
}    
ko.applyBindings(new viewModel());

J'ai eu ce travail, par la génération de l'ensemble de l'html dans mon javascript et avoir ce travail à l'aide de cases à cocher, mais je suis perplexe, la génération d'un groupe de composants radiobutton à l'aide de la boucle foreach itérateur.

Quelqu'un a obtenu un exemple comme mon premier travail?

source d'informationauteur user759608