AngularJS - Bindung von Optionsfeldern an Modelle mit booleschen Werten

Ich habe ein problem verbindlich, radio-buttons, um ein Objekt, dessen Eigenschaften haben Boolesche Werte. Ich versuche, display prüfungsfragen abgerufen von einem $resource.

HTML:

<label data-ng-repeat="choice in question.choices">
  <input type="radio" name="response" data-ng-model="choice.isUserAnswer" value="true" />
  {{choice.text}}
</label>

JS:

$scope.question = {
    questionText: "This is a test question.",
    choices: [{
            id: 1,
            text: "Choice 1",
            isUserAnswer: false
        }, {
            id: 2,
            text: "Choice 2",
            isUserAnswer: true
        }, {
            id: 3,
            text: "Choice 3",
            isUserAnswer: false
        }]
};   

Mit diesem Beispiel-Objekt, die "isUserAnswer: true" - Eigenschaft bewirkt nicht, dass der radio-button ausgewählt werden. Wenn ich Kapseln die boolean-Werte in Anführungszeichen, es funktioniert.

JS:

$scope.question = {
    questionText: "This is a test question.",
    choices: [{
            id: 1,
            text: "Choice 1",
            isUserAnswer: "false"
        }, {
            id: 2,
            text: "Choice 2",
            isUserAnswer: "true"
        }, {
            id: 3,
            text: "Choice 3",
            isUserAnswer: "false"
        }]
};   

Leider mein REST-service behandelt, die Eigenschaft als boolean, und es wird schwierig sein, zu ändern, die JSON-Serialisierung zu Kapseln diese Werte in Anführungszeichen gesetzt werden. Gibt es eine andere Möglichkeit zum einrichten der Modell-Bindung ohne änderung der Struktur des Modelles?

Hier ist das jsFiddle zeigen, dass nicht-arbeiten und Objekte

InformationsquelleAutor der Frage peteallen | 2013-06-06

Schreibe einen Kommentar