2015-11-24 7 views
5

Ho due checkbox nel modulo ora l'utente può selezionare uno o entrambi e postare i dati sul server, ma non sono sicuro, come collegherò entrambi i valori a $scope.ng-model quando l'utente pubblica i dati?Come pubblicare valori per le checkbox con ng-model?

main.html

<div class="col-md-8 col-md-offset-2"> 
    <label class="checkbox"> 
     <input type="checkbox" ng-value="'uploadPrc'" ng-model="prcModel">Upload PRC 
    </label> 
    <label class="checkbox"> 
     <input type="checkbox" ng-value="'uploadPrt'" ng-model="prtModel">Upload PRT 
    </label> 
</div> 

risposta

1

angolari "dati bin a due vie ding" funziona così: inizializzare il dati del modulo sul nell'ambito del controllore

$scope.form = { 
    prcModel: false, 
    prtModel: false 
} 

E secondo lei:

<div class="col-md-8 col-md-offset-2"> 
    <label class="checkbox"> 
     <input type="checkbox" ng-value="'form.prcModel'" ng-model="form.prcModel">Upload PRC 
    </label> 
    <label class="checkbox"> 
     <input type="checkbox" ng-value="'form.prtModel'" ng-model="form.prtModel">Upload PRT 
    </label> 
</div> 

Se si modifica il valore delle vostre caselle di controllo il valore del vostro modello di cambiamento sarà immediatamente anche. Quindi tutto ciò che devi fare è gestire il tuo $scope.form nel tuo controller.

+0

quindi se inserisco i dati per form.prcModel, quale valore verrà inviato al server nell'esempio sopra? – aftab

+0

se per esempio la casella di controllo PRC è selezionata '$ scope.form.prcModel' sarà' true' e quel valore verrà pubblicato. –

+0

in questo caso dovrei mantenere lo stesso modello ng per entrambe le caselle di controllo – aftab

0

Non so se è questo quello che stai cercando, ma perché non provare avere il proprio modello come:

<div class="col-md-8 col-md-offset-2"> 
    <label class="checkbox"> 
     <input type="checkbox" ng-model="myModel.prcModel">Upload PRC 
    </label> 
    <label class="checkbox"> 
     <input type="checkbox" ng-model="myModel.prtModel">Upload PRT 
    </label> 
</div> 

così nel codice .js voi possono inviare e ricevere il modello "MyModel" come un oggetto ei valori saranno vere o false

... 
var data = $scope.myModel 
... 
$scope.myModel = data; 
Problemi correlati