json
  • asp.net-mvc-4
  • 2015-09-16 25 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

    相關問題