Afficher une liste depuis un dropdownlist
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:
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:
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 !