Asp.net mvc JqGrid未从asp.net mvc操作加载数据

Asp.net mvc JqGrid未从asp.net mvc操作加载数据,asp.net-mvc,jqgrid,Asp.net Mvc,Jqgrid,我几个小时前遇到了这个问题,我无法回避 我正在尝试将JqGrid实现到我的ASP.NETMVC应用程序中。我用的是菲尔·哈克的例子 我导入了js和css: <link href="/Content/jquery-ui-1.8.5.custom.css" rel="stylesheet" type="text/css" /> <link href="/Content/ui.jgrid.css" rel="stylesheet" type="text/css"

我几个小时前遇到了这个问题,我无法回避

我正在尝试将JqGrid实现到我的ASP.NETMVC应用程序中。我用的是菲尔·哈克的例子

我导入了js和css:

    <link href="/Content/jquery-ui-1.8.5.custom.css" rel="stylesheet" type="text/css"  />
    <link href="/Content/ui.jgrid.css" rel="stylesheet" type="text/css"  />
    <script type="text/javascript" src="/Scripts/jquery-1.4.1.js"></script>
    <script type="text/javascript" src="/Scripts/jquery-ui-1.8.5.custom.min.js"></script>
    <script type="text/javascript" src="/Scripts/jquery.jqGrid.min.js" ></script>
    <script type="text/javascript" src="/Scripts/grid.local-en.js" ></script>
此时,我可以看到空网格,但整个页面覆盖着覆盖,我不能点击任何东西(这可能是“加载”覆盖)

这里怎么了?

kMike

您需要将以下内容添加到return语句中(假设为MVC2):

这有望解决问题。另外,如OT评论中所述,请检查firebug以了解请求中的任何问题

[编辑]-还可以沿着这些线进行签名,以便与返回类型更紧密地耦合:

public JsonResult All(string sidx, string sord, int page, int rows)
另外,我的书签中有:

享受:)

kMike

您需要将以下内容添加到return语句中(假设为MVC2):

这有望解决问题。另外,如OT评论中所述,请检查firebug以了解请求中的任何问题

[编辑]-还可以沿着这些线进行签名,以便与返回类型更紧密地耦合:

public JsonResult All(string sidx, string sord, int page, int rows)
另外,我的书签中有:


享受:)

我看到了更多的错误,所以我决定再给你写信

首先,最重要的是您应该更改JavaScript文件的顺序。文件
grid.local en.js
必须包含在jquery.jqGrid.min.js之前

我建议您在jqGrid大量使用CSS的情况下,更快速地使用它。jqGrid不需要包含
jquery-ui-1.8.5.custom.min.js
。jqGrid只使用jQuery UI CSS文件(如
jQuery-UI-1.8.5.custom.CSS
)。只有当您使用中描述的功能时,您才会需要它

下面是一些小的优化备注:

align:'left'
是默认值,因此不需要包含它。
pager:jQuery(“#pager”)
可以简化为
pager:“#pager”

<table id="list" class="scroll" cellpadding="0" cellspacing="0"></table>
<div id="pager" class="scroll" style="text-align:center;"></div>
它将允许您稍微减少从服务器发送的数据的大小。您可以添加参数
jsonReader:{cell:}
并更改
All
方法的代码部分,该方法将生成

rows = new[]{
    new[] {"1", "hard asdf", "issue adfds", "more issue", "someuser", "otheruser", "2", "Submitted"}},
    new[] {"2", "hard asdf", "issue adfds", "more issue", "someuser", "otheruser", "2", "Submitted"}},
    new[] {"3", "hard asdf", "issue adfds", "more issue", "someuser", "otheruser", "2", "Submitted"}}
}

(请参阅或阅读更多信息。)

我又看到了一些错误,因此我决定再给您写信

首先,最重要的是您应该更改JavaScript文件的顺序。文件
grid.local en.js
必须包含在jquery.jqGrid.min.js之前

我建议您在jqGrid大量使用CSS的情况下,更快速地使用它。jqGrid不需要包含
jquery-ui-1.8.5.custom.min.js
。jqGrid只使用jQuery UI CSS文件(如
jQuery-UI-1.8.5.custom.CSS
)。只有当您使用中描述的功能时,您才会需要它

下面是一些小的优化备注:

align:'left'
是默认值,因此不需要包含它。
pager:jQuery(“#pager”)
可以简化为
pager:“#pager”

<table id="list" class="scroll" cellpadding="0" cellspacing="0"></table>
<div id="pager" class="scroll" style="text-align:center;"></div>
它将允许您稍微减少从服务器发送的数据的大小。您可以添加参数
jsonReader:{cell:}
并更改
All
方法的代码部分,该方法将生成

rows = new[]{
    new[] {"1", "hard asdf", "issue adfds", "more issue", "someuser", "otheruser", "2", "Submitted"}},
    new[] {"2", "hard asdf", "issue adfds", "more issue", "someuser", "otheruser", "2", "Submitted"}},
    new[] {"3", "hard asdf", "issue adfds", "more issue", "someuser", "otheruser", "2", "Submitted"}}
}

(请参阅或阅读更多相关内容。)

使用FireBug(例如),查看是否存在JavaScript错误,AJAX请求的外观如何,是否存在错误,以及所有操作是否成功。使用FireBug(例如),查看是否存在JavaScript错误,或者AJAX请求的外观如何,如果存在错误,如果你的所有动作都成功了。谢谢吉姆,这让我更进一步了谢谢吉姆,这让我又向前走了几步。:)嗨,奥列格。谢谢你给我一些额外的提示。我在jqGrid之后加载locale时遇到了问题,并修复了它。我对datepickar使用jQueryUI,这就是为什么包含它。也谢谢你给我其他有用的提示。不过我还有一些问题。现在网格或多或少可以正常工作了,就像我想的那样,但仍然有灰色覆盖层隐藏了页面的其余部分,并使所有元素“不可读取”。我想,这是css的一些问题。@kMike:您是否使用声明作为HTML的第一行?您可以使用IE8、Chrome或Firebug的开发工具检查覆盖。哪个id有灰色覆盖层?是的,我用DOCTYE。lui_列表是覆盖整个页面的div的id。据我所知,它负责在加载数据时阻塞页面,但在加载数据后页面仍保持打开状态。谢谢你给我一些额外的提示。我在jqGrid之后加载locale时遇到了问题,并修复了它。我对datepickar使用jQueryUI,这就是为什么包含它。也谢谢你给我其他有用的提示。不过我还有一些问题。现在网格或多或少可以正常工作了,就像我想的那样,但仍然有灰色覆盖层隐藏了页面的其余部分,并使所有元素“不可读取”。我想,这是css的一些问题。@kMike:您是否使用声明作为HTML的第一行?您可以使用IE8、Chrome或Firebug的开发工具检查覆盖。哪个id有灰色覆盖层?是的,我用DOCTYE。lui_列表是覆盖整个页面的div的id。据我所知,它负责在加载数据时阻塞页面,但在加载数据后页面仍保持打开状态。
{ name: 'Id', index: 'Id', key: true , width: 40 }
rows = new[]{
    new[] {"1", "hard asdf", "issue adfds", "more issue", "someuser", "otheruser", "2", "Submitted"}},
    new[] {"2", "hard asdf", "issue adfds", "more issue", "someuser", "otheruser", "2", "Submitted"}},
    new[] {"3", "hard asdf", "issue adfds", "more issue", "someuser", "otheruser", "2", "Submitted"}}
}