2016-05-19 8 views
0

Ich habe ein Modal, das mit einem Formular kommt, in gibt es einen Abschnitt, der erscheint, wenn auf eine Schaltfläche geklickt wird.angularjs checkbox behält seinen Wert

Im verborgenen Abschnitt I die folgenden zwei Optionsfelder haben:

<label class="radio-inline"> 
    <input type="radio" ng-model="vm.CreateChild" name="inventoryType" value="false" />Parent 
</label> 
<label class="radio-inline"> 
    <input type="radio" ng-model="vm.CreateChild" name="inventoryType" value="true" />Child 
</label> 

Wenn ein Radiobutton ich sehe ich in der Lage ausgewählt wird, um die vm.CreateChild Werte gesetzt, wo ich ein Problem habe, ist wenn die modale geschlossen ist stelle ich die vm.CreateChild auf „“,

vm.CreateChild = ""; 

wenn jedoch die modal angezeigt wird, und ich auf diese Schaltfläche klicken, wird die letzte Optionsfeld ausgewählt ist noch ausgewählt. Ich bin nicht sicher, warum es das tut, wie der Wert, wenn ich debuggen ist ", gibt es eine andere Möglichkeit, dies zu tun? Ich möchte es an einem bestimmten Punkt löschen.

UPDATE: Ich habe, war es ein CSS-Framework Problem wurde der Rahmen eine <span class='checked'> um die Radio-Buttons Verpackung, wenn sie geprüft wurden. So eckig funktionierte gut mit der Auswahl der Tasten, aber diese Spannweite ließ es so aussehen, als ob es immer überprüft wurde.

+0

Haben Sie stattdessen mit 'ng-value' versucht? –

+0

Wie verstecken/zeigen Sie diesen Abschnitt? – MayK

+0

Haben Sie versucht $ scope.vm.CreateChild = '';. Müssen Sie $ scope. $ Apply() es? – drakkanraz

Antwort

0

Versuchen Sie sich mit

vm.CreateChild = angular.copy({}); 

Manchmal habe ich konfrontiert Problem mit tiefem Kopieren oder einen Wert zu setzen.

+0

Es war nicht mit Angular verwandt, siehe mein Update – Paritosh