簡體   English   中英

Kendo UI Grid將JSON返回給瀏覽器(使用MVC)

[英]Kendo UI Grid returns JSON to browser (using MVC)

我最近購買了一個Kendo訂閱,我無法讓AJAX綁定網格按預期運行,希望有人在這里可以提供幫助。

我已經關注了Kendo文檔教程@ http://docs.kendoui.c​​om/getting-started/using-kendo-with/aspnet-mvc/helpers/grid/ajax-binding ,可以很好地使AJAX綁定工作。

我已經嘗試將其實現到現有的MVC解決方案中,每當我單擊New或Edit命令按鈕時, 我都會將一個JSON字符串返回給瀏​​覽器 類似於問題( JSON數據到KENDO UI Grid ASP.NET MVC 4 )但是這個問題的答案對我不起作用。

這是我的控制器代碼......

    public ActionResult Index()
    {
        // non-important code removed here // 

        var viewModel = newReferenceViewModel();
        ViewBag.TradeReferences = TradeReferenceWorker.Get(applicationId);

        return View(viewModel);
    }

    public ActionResult TradeReferences_Read([DataSourceRequest]DataSourceRequest request)
    {
        var applicationId = GetCurrentApplicationId();
        DataSourceResult result = TradeReferenceWorker.Get(applicationId).ToDataSourceResult(request);
        return Json(result, "text/x-json", JsonRequestBehavior.AllowGet);
    } 

而觀點....

@(Html.Kendo().Grid((IEnumerable<TradeReference>)ViewBag.TradeReferences)
  .Name("gridTradeReference")

  .DataSource(dataSource => dataSource
      .Ajax()
       .Model(model =>
        {
            model.Id(tradeReference => tradeReference.TradeReferenceId);
            model.Field(tradeReference => tradeReference.TradeReferenceId).Editable(false);
        })
        .Read(read => read.Action("TradeReferences_Read", "References"))
        .Create(create => create.Action("TradeReference_Create", "References"))
        .Update(update => update.Action("TradeReference_Update", "References"))
        .Destroy(destroy => destroy.Action("TradeReference_Destroy", "References"))
   )

  .Columns(columns =>
  {
      columns.Bound(tref => tref.TradeReferenceId).Visible(false);
      columns.Bound(tref => tref.Name);
      columns.Bound(tref => tref.Phone);
      columns.Command(commands =>
      {
          commands.Edit();
          commands.Destroy();
      }).Title("").Width(200);
  })
  .ToolBar(toolbar => toolbar.Create()) 
  .Editable(editable => editable.Mode(GridEditMode.InLine)) 
  .Sortable()

總結一下...... Grid將首次完美加載。 我沒有在編輯/刪除操作上連接任何內容,只是嘗試讓Create運行。 單擊“添加新”,甚至“編輯”將使瀏覽器只顯示Json到屏幕。

希望這很簡單 - 提前感謝

解決了 - 問題是沒有正確引用kendo js文件。

在我的特定情況下,捆綁沒有100%正確完成,因此Kendo javascript文件永遠不會被包含在頁面中。

它們還必須按照特定順序出現,如故障排除指南中所述http://docs.kendoui.c​​om/getting-started/using-kendo-with/aspnet-mvc/helpers/grid/troubleshooting

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM