AngularJS - Appliquer l'attribut requis conditionnellement en fonction de la valeur du bouton radio

J'ai de la suite dans mon formulaire afin de valider, ce qui devrait arriver est lorsque l'utilisateur clique citoyen boutons radio sno' est affiché/masqué selon oui/non. Mais j'ai besoin de supprimer les "requis" attribut " sno " lorsque l'utilisateur clique sur "Non" simultanouely, dans l'ordre pour empêcher la validation de sno'.

<input type="radio" ng-model="citizen" value="Yes" citizen-check>Yes
<input type="radio" ng-model="citizen" value="No">No

<div ng-show='enableNo()'>
    <div id="view">
        <input type="text" id="sno" name="sno" required>
    </div>
</div>
<div ng-hide='enableNo()'>
    <div id="view">
        <input type="text" id="pno" name="pno" required>
    </div>
</div>

À l'intérieur du contrôleur j'ai le texte suivant pour afficher/masquer la fonctionnalité,

$scope.enableNo= function()
    {
        $log.log('enableNo called');
        if($scope.citizen == 'Yes')
        {
            return true;
        }
        else
        {
            return false;
        }   
    }

Comment dois-je rédiger une directive pour supprimer 'required' attribut "sno'?

source d'informationauteur Swarne27 | 2014-07-14