2014-05-20 3 views
3

Je n'arrive pas à remplir un élément de formulaire sélectionné. Voici la syntaxe que j'ai jusqu'à présent. Il n'attrape pas le fichier program.title et ne remplit pas les commandes ngOptions.AngularFire & ngOptions

<select ng-model="student.program" ng-options="program.title for program in programList.title"> 
<option value="">Select A Program</option> 
</select> 

Voici la structure JSON base de mes données sur Firebase:

{ "-JNIBeRDAuNN9c7SGZ91" : { "location" : "Online", "director" : "Shawn Clark", "title" : "Web Design & Development" }, "-JNIBuaQlWyEyWRjONPa" : { "location" : "Online", "director" : "Walen Morrow", "title" : "Graphic Design" }, "-JNIBmIwasMYOPRPupHl" : { "location" : "Campus", "director" : "Tracy Monohan", "title" : "Web Design & Development" }, "-JNKGPNj-lGzqHJ92RTD" : { "location" : "Online", "director" : "Glen Speedy", "title" : "Theory of Animation & Physics" }, "-JNK9oTO97PfSo-0wQfY" : { "location" : "Campus", "director" : "John Myers", "title" : "Instructional Design & Technology" }, "-JNIC3Tldo-Qi3ru2ph7" : { "location" : "Campus", "director" : "George Narrow", "title" : "Graphic Design" }, "-JNK8cdgdHKjH2meKl9x" : { "location" : "Online", "director" : "Stacy McNally", "title" : "Instructional Design & Technology" } }

Répondre

2

Je crois que vous cherchez

<select ng-model="student.program" ng-options="program.title for (id, program) in programList"><option value="">Select A Program</option></select> 

Votre objet racine de JSON est un objet, pas un tableau. See angular documentation for object data sources

See Plunker

+0

Eh bien merci tellement Joel! Cela a fonctionné, maintenant le seul est qu'en cliquant sur le bouton Ajouter maintenant, je reçois toutes les données de cet objet (titre, directeur et emplacement). Y a-t-il moyen d'arranger ça? –

+0

Voici le lien vers l'application en question, vous remarquerez que toutes les données apparaissent. https://canvasapp.firebaseapp.com/#/manage-students –

+0

Je ne comprends pas. Quand je charge la page, je vois JSON dans la colonne du programme d'étude. Rien ne se passe quand je clique sur ajouter. Si j'ai résolu votre question initiale, il est préférable de la marquer comme résolue et d'ouvrir une nouvelle question. Merci! –

-2

Essayez le code suivant.

Il devrait fonctionner:

<select ng-model="student.program" ng-options="program.title for program in programList"><option value="">Select A Program</option></select> 

Merci

+0

Oui, ce fut aussi l'un de mes variations, malheureusement en vain ... –

+0

https://canvasapp.firebaseapp.com/#/manage-students –

+0

Ne pas utiliser l'utilisation programList.title program.title dans ng-options. Changez votre ng-options en ng-options = "programme.title pour le programme dans la liste des programmes" –

Questions connexes