0

我在 MVC GridView 控件上的回调有一些问题。当页面第一次加载时,一切看起来都很好,但是当我执行任何需要回调的操作(例如,如果我尝试更改页面)时,操作成功执行,但是加载动画出现在网格上并且永远不会消失。

这里奇怪的是实际的回调函数很好 - 如果我切换到第 2 页,网格会随着第 2 页更新,我可以看到所有正确的数据,但加载动画永远不会消失。如果我通过单击标题更改排序,则会应用新排序并刷新网格,但加载动画仍会出现并且不会消失。

我的代码如下(这只是一个“乱七八糟”的学习练习,所以请不要评论与手头问题无关的代码)。

查看 - Browse.cshtml

@model IEnumerable<VTData.Models.Client>

@{
    ViewBag.Title = "Browse";
}

<h1>Browse clients</h1>

@Html.Partial("BrowsePartial", Model)

查看 - BrowsePartial.cshtml

@model IEnumerable<VTData.Models.Client>

@Html.DevExpress().GridView(
    settings =>
    {
        settings.Name = "ClientGrid";
        settings.CallbackRouteValues = new {
            Controller = "Clients",
            Action = "ClientsPartial"
        };
        settings.KeyFieldName = "Id";
        settings.Columns.Add("Code");
        settings.Columns.Add("Given");
        settings.Columns.Add("Surname");
    }
).Bind(Model).GetHtml()

控制器

public class ClientsController : Controller
{
    //
    // GET: /Clients/
    public ActionResult Index()
    {
        var db = VTData.VTDatabase.Connect();
        var sql = PetaPoco.Sql.Builder.Select("*").From("client");

        return View("Browse", db.Query<Client>(sql));
    }

    public ActionResult ClientsPartial()
    {
        var db = VTData.VTDatabase.Connect();
        var sql = PetaPoco.Sql.Builder.Select("*").From("client");

        return PartialView("BrowsePartial", db.Query<Client>(sql));
    }
}

我无法弄清楚这里出了什么问题。有任何想法吗?

4

2 回答 2

3

对于遇到此问题的其他人来说,这非常简单且非常尴尬。问题是在包含 DevExpress javascripts 之前我没有包含 jQuery。哎呀!

于 2014-02-04T23:40:18.063 回答
1

我遇到了类似的问题并解决了。当 Dev express 控件尝试加载数据时,服务器端出现空引用异常。解决该异常使我的控制工作。

于 2014-08-21T18:04:01.783 回答