2012-09-03 4 views
0

Je cherche à faire:menu déroulant de remplir de manière dynamique base de données

J'ai deux champs 1. Date - en utilisant jquery datepicker 2. DropDown - Equipées id étudiant

Alors, quand je sélectionne un date de dire 03/09/2012 je devrais obtenir tous les étudiants ID présents ce jour-là (disons 15 d'entre eux), puis quand je change la date au 04/09/2012 je devrais obtenir id de seulement les étudiants qui sont présents ce jour-là (dis 29 d'entre eux)

Je l'ai fait est, j'ai fait un appel ajax pour interroger la base de données comme:

$('#date_selected').blur(function(){ 
$.ajax({ 
//query database and get the array of student id present on that date 
//but from jquery how do i know populate my dropdown ? 
//i would probably get the results json encoded 
}); 
}); 

Aucun problème sur l'obtention des données, je veux juste savoir comment remplir le menu déroulant à l'aide du tableau (JSON) que j'ai

+0

il ya beaucoup de tutoriels et de réponses à ce sujet s'il vous plaît rechercher le befor net e demande de réponse ici par la façon dont regarder http://stackoverflow.com/questions/11305905/populate-dropdown-from-database-in-codeigniter –

+0

@raheeshan: Il demande un appel ajax où il obtient la chaîne json seulement . il ne veut pas html entier dans la requête ajax –

Répondre

2

Utilisez ceci dans votre fonction de succès ajax:

data = $.parseJSON(data); 

var select_fields = data.selectf; 

var select_id = "/*ID OF SELECT FIELD*/"; 

$('#'+select_id+' option').remove(); 

for(var x in select_fields){ 
    $('#'+select_id).append($('<option value="'+select_fields[x]['value']+'">'+select_fields[x]['name']+'</option>')); 
} 
1

vous pouvez utiliser datepicker méthode onselect

$('#date_selected').datepicker({ 
    onSelect:function (selectedDate) { 
     //make your jquery ajax post here 
    } 
    }); 
+2

il veut comment ajouter des données pas d'événement –

Questions connexes