Bonjour tout le monde,
Je suis débutante en asp mvc et en ajax, je voudrais afficher une liste depuis une dropdownlist sachant que j'ai toutes mes données dans sql server.
Les données s'affichent bien dans la dropdownlist, mais la deuxième liste ne s'affiche jamais remplie.
Voici ma vue :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 @model Exercice2.Models.Filiere <script type="text/javascript"> $(document).ready(function () { $(function () { $("#FiliereSelect").change(function () { $.get("/Exo2/GetEtudiant", { ID: $("#FiliereSelect").val() }, function (data) { $("#Contenu").empty(); $.each(data, function (index, ligne) { $("#Contenu").append("<option value='" + ligne.cne + "'>" + ligne.nom + "</option>") }); }) }); }); }); </script> @{ ViewBag.Title = "Index"; } <h2>Index</h2> @using (Html.BeginForm()) { @Html.DropDownListFor(model => model.Id_filiere, ViewBag.fil as SelectList, "Choisir une filière", new { id = "FiliereSelect" }) <br /> <select id="Contenu"></select> }
et voici mon contrôleur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 using Exercice2.Models; using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; namespace Exercice2.Controllers { public class Exo2Controller : Controller { Model1 model; // GET: Exo2 [HttpGet] public ActionResult Index() { model = new Model1(); ViewBag.fil = new SelectList(model.Filieres, "Id_filiere", "Nom_filiere"); return View(); } public JsonResult GetEtudiant(int ID) { model = new Model1(); model.Configuration.ProxyCreationEnabled = false; return Json(model.etudiants.Where(p => p.id_fil == ID), JsonRequestBehavior.AllowGet); } } }
Merci beaucoup d'avance !
Partager