json
  • asp.net-mvc-4
  • 2015-09-16 34 views -1 likes 
    -1

    我想在我的视图中获取中心列表。这是我的代码:使用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">&times;</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 **** --> 
    
    +0

    请将错误信息翻译为英文。为什么你会传递一个值给'string examenId'而你永远不会使用它?为什么当你似乎只需要'name'的值时,你会将'CentreExamen'的所有属性都返回到你的集合中。为什么你用'id =“IntituleM”'覆盖元素的文本?(你可以使用'return(r.LastOrDefault()。Select(x => x.name)' –

    +0

    我将examenId传递给保留测试中心的列表,因为我没有很多值我做了getall()。在我看来,我有一个列表框,其中包含中心列表,我想选择只有选定的考试中心(examenId)。我这样做只为测试没有如果德函数返回的东西或者不是。感谢您的帮助 – wbnani

    回答

    0

    您的操作正在向客户端抛出异常。

    public JsonResult result(string examenId) 
    { 
        try{ 
        List<CentreExamen> r= centreExamenService.GetAll().ToList(); 
        return Json(r, JsonRequestBehavior.AllowGet); 
        } 
        catch(Exception e){ 
        return Json("exception occured while processing your request"); 
        } 
    } 
    

    现在处于调试模式,请检查您的centreExamenService.GetAll()方法。它抛出异常,或在这里发布方法。

    +0

    感谢您的申请 它的POST方法 错误被张贴方法 – wbnani

    +0

    后产生。如果我的回答帮助你,你可以接受它 - 感谢 –

    +0

    不,它没有帮助我 – wbnani

    相关问题