我想在我的视图中获取中心列表。这是我的代码:使用getJSON来显示列表
ListExamens.cshtml:在控制器
<script type="text/javascript">
function EditExamen(id) {
$.getJSON('/Parametrage/result?examenId=' + id), function (data) {
$.each(data, function (key, val) {
$('#IntituleM').text(val.name);
});
};
}
</script>
@foreach (var item in Model.Item1)
{
<tr>
<td>@Html.DisplayFor(modelItem => item.Intitule)</td>
<td>@Html.DisplayFor(modelItem => item.Direction.Description)</td>
<td>@Html.DisplayFor(modelItem => item.Datelimite)</td>
<td>
<a class="btn btn-custom btn-xs" href="javascript:EditExamen(@item.Id)" title="Editer">
<i class="fa fa-edit"></i>
</a>
<a class="btn btn-custom btn-xs" href="javascript:DeleteAskToConfirm(@item.Id)" title="Supprimer">
<i class="fa fa-trash-o"></i>
</a>
</td>
</tr>
}
功能:
public JsonResult result(string examenId)
{
List<CentreExamen> r= centreExamenService.GetAll().ToList();
return Json(r, JsonRequestBehavior.AllowGet);
}
我使用Firebug调试JavaScript函数我得到这个错误:
没有异常的首选机会类型'System.InvalidOperationException异常'的产品dans System.Web.Extensions.dll 没有例外depremièrechance de类型'System.InvalidOperationException's'est produite dans System.Web.Mvc.dll 没有例外depremièrechance de type'System.InvalidOperationException's'est produite dans System.Web.Mvc.dll
这是我的javascript函数:
function EditExamen(id) {
$.getJSON("/Parametrage/result", {examenId:id}, function (data) {
$.each(data, function (i, item) {
$('#CentresM').val(item.id); => this is the list what i want to fill and it is in modal pop up
});
});
$('#editExamen').modal();
}
</script>
这是我的弹出
<div id="editExamen" class="modal fade">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h4 class="modal-title">Modifier un Examen</h4>
</div>
<div class="modal-body">
<form name="form-editExamen" id="form-editExamen" action="ModifierExamen" method="post" class="form-horizontal">
<div class="form-group">
@Html.Hidden("examenIdM")
<div class="col-md-3">
<label>Intitulé :</label>
</div>
<div class="col-md-3">
@Html.TextBoxFor(model => model.Item2.Intitule, new { id = "IntituleM", @class = "form-control" })
</div>
<div class="col-md-3">
<label>Lieu :</label>
</div>
<div class="col-md-3">
@Html.DropDownList("DirectionsM", null, "Sélectionnez", new { @class = "form-control" })
</div>
</div>
<div class="form-group">
<div class="col-md-3">
<label>Centre :</label>
</div>
<div class="col-md-3">
@Html.ListBox("CentresM", (MultiSelectList)ViewBag.Centres) => this is my listbox
</div>
<div class="col-md-3">
<label>Note éliminatoire :</label>
</div>
<div class="col-md-3">
@Html.TextBoxFor(model => model.Item2.NoteEliminatoire, new { id = "NoteEliminatoireM", @class = "form-control" })
</div>
</div>
<div class="form-group">
<div class="col-md-3">
<label>Moyenne de passage :</label>
</div>
<div class="col-md-3">
@Html.TextBoxFor(model => model.Item2.MoyennePassage, new { id = "MoyennePassageM", @class = "form-control" })
</div>
<div class="col-md-3">
<label for="annee"> Année :</label>
</div>
<div class="col-md-3">
@Html.DropDownList("AnneeM", null, new { @class = "form-control" })
</div>
</div>
<div class="form-group">
<div class="col-md-3">
<label for="grade"> Grade :</label>
</div>
<div class="col-md-3">
@Html.DropDownList("GradeM", null, "Sélectionnez", new { @class = "form-control" })
</div>
<div class="col-md-3">
<label for="grade"> Date limite de réception des candidatures :</label>
</div>
<div class="col-md-3">
@Html.TextBoxFor(model => model.Item2.Datelimite, DateTime.Now.ToString("d"), new { id = "DatelimiteM", @class = "form-control datepicker" })
</div>
</div>
<div class="modal-footer">
<input type="submit" value="Modifier" class="btn btn-custom btn-lg" />
<button type="button" class="btn btn-default" data-dismiss="modal">Fermer</button>
</div>
</form>
</div>
</div><!-- /.modal-content -->
</div><!-- /.modal-dialog -->
</div><!-- /.modal -->
<!-- **** deleteCritere **** -->
请将错误信息翻译为英文。为什么你会传递一个值给'string examenId'而你永远不会使用它?为什么当你似乎只需要'name'的值时,你会将'CentreExamen'的所有属性都返回到你的集合中。为什么你用'id =“IntituleM”'覆盖元素的文本?(你可以使用'return(r.LastOrDefault()。Select(x => x.name)' –
我将examenId传递给保留测试中心的列表,因为我没有很多值我做了getall()。在我看来,我有一个列表框,其中包含中心列表,我想选择只有选定的考试中心(examenId)。我这样做只为测试没有如果德函数返回的东西或者不是。感谢您的帮助 – wbnani