J'ai l'élément d'entrée HTML suivant dont je veux changer l'espace réservé en fonction de ce qui est contenu dans mon modèle utilisateur.
<input type="text" class="form-control" id="Username" name="Username" data-ng-model="user.Username" required="" ng-placeholder="{{user.AdAccount ? 'Username' : 'Ad Login'}}">
J'ai même essayé cette méthode qui aurait fonctionné dans les versions précédentes d'angular, mais sans succès.
ng-placeholder="user.AdAccount == true && 'Username' || 'AD Login'"
Pour le moment, mon espace réservé apparaît complètement vide. Je sais également que AdAccount contient correctement true/false car il est utilisé ailleurs sur le formulaire avec ng-show.
Je ne pense pas qu'il y ait de directive ngPlaceholder. Essayez de changer votre code pour:
<input type="text" class="form-control" id="Username" name="Username" data-ng-model="user.Username" required="" placeholder="{{user.AdAccount ? 'Username' : 'Ad Login'}}" />
Autrement dit, changez ng-placeholder
en juste placeholder
, et tout devrait bien fonctionner.
(Notez également la barre oblique à fermeture automatique si vous devez vous conformer à un XHTML valide.)
Vous pouvez essayer ceci:
<input type="text" class="form-control" id="Username" name="Username" data-ng-model="user.Username" required="" ng-attr-placeholder="{{user.AdAccount ? 'Username' : 'Ad Login'}}">
ng-attr- fonctionnera avec n'importe quel attribut HTML.
En HTML:
<input type="text" placeholder="{{doctorname ? doctorname : 'Dr. your name'}}"
class="editable-class" ng-model="doctor.name" readonly/>
Dans le contrôleur:
$scope.doctorname = $scope.doctorinfo.name;