Je veux changer dynamiquement les entrées de formulaire, et j'ai essayé de le faire en utilisant ng-bind-html, mais seul l'étiquette est affichée, la zone de texte n'apparaît pas sur le DOM . Ce qui doit être écrit dans ctrl.content dépend ici des valeurs du serveur.Comment ajouter dynamiquement des formulaires d'entrée dans Angular JS
Remarque
valeur de type va venir du serveur, et il peut être dynamique
HTML
<div ng-bind-html="ctrl.content">
Contrôleur
function myCtrl(type) {
var ctrl = this;
switch (type) {
case 1:
ctrl.content = " <div> Input : <input type=\"text\" > </div> ";
break;
case 2:
ctrl.content = " <div> Input : <input type=\"textarea\" > </div> ";
break;
default:
}
Dom Élément:
<div class="padding ng-binding ng-scope" ng-bind-html="addMeassurments.content"> <div> Input : </div> </div>
qui ressemble à jQueryish .. que diriez-vous d'utiliser ng-show/hide/if/switch à la place? – tanmay
le contenu à afficher est dynamique, donc je ne pouvais pas utiliser ng-if/hide. –
Vous affectez votre contrôleur à la valeur - ne devriez-vous pas assigner le $ scope à la place? – RamblinRose