Usando caixas de seleção e requerido com o AngularJS
Eu tentei usar o html5required
atributo para o meu grupo de caixas de seleção, mas eu não acho uma boa maneira de implementá-lo com ng-form.
Quando uma caixa de seleção está marcada, quero que o valor desse elemento de entrada seja enviado para uma matriz de valores.
O validador requerido angular parece observar o modelo ng associado ao elemento de entrada, mas como posso vincular várias caixas de seleção ao mesmo modelo e atualizar seu valor com o valor do campo de entrada?
Agora a implementação é comoeste violino.
<div ng-controller="myCtrl">
<ng-form name="myForm">
<span ng-repeat="choice in choices">
<label class="checkbox" for="{{choice.id}}">
<input type="checkbox" required="required" value="{{choice.id}}" ng-click="updateQuestionValue(choice)" ng-model="choice.checked" name="group-one" id="{{choice.id}}" />
{{choice.label}}
</label>
</span>
<input type="submit" value="Send" ng-click="submitSurvey(survey)" ng-disabled="myForm.$invalid" />
</ng-form>
</div>
A função updateQuestionValue lida com a adição ou remoção da matriz de valores, mas cada caixa de seleção tem seu próprio modelo e é por isso que cada caixa de seleção precisa ser verificada para que o formulário seja válido.
Eu tenho que trabalhar em um grupo de botões de rádio, mas todos eles funcionam no mesmo modelo que apenas um pode ser selecionado.