Jquery 带ASP.NET MVC的jqGrid显示记录时出现问题
我正在使用Craig Stuntz的文章介绍如何将jqGrid与ASP.NET MVC结合使用:搜索和格式化, 使用HttpFox,我可以看到json数据被成功返回,但它不会显示在网格中。显示良好,但没有数据和页码。有人能看出这有什么问题吗Jquery 带ASP.NET MVC的jqGrid显示记录时出现问题,jquery,asp.net-mvc,jqgrid,Jquery,Asp.net Mvc,Jqgrid,我正在使用Craig Stuntz的文章介绍如何将jqGrid与ASP.NET MVC结合使用:搜索和格式化, 使用HttpFox,我可以看到json数据被成功返回,但它不会显示在网格中。显示良好,但没有数据和页码。有人能看出这有什么问题吗 $(document).ready(function() { $("#grid").jqGrid({ url: '/Grid/DynamicGridData/', datatype: 'json', mtype: 'GET',
$(document).ready(function() {
$("#grid").jqGrid({
url: '/Grid/DynamicGridData/',
datatype: 'json',
mtype: 'GET',
colNames: ['EnquiryID', 'FirstName', 'Surname', 'PostCode'],
colModel: [
{ name: 'EnquiryID', index: 'EnquiryID', width: 80, align: 'left' },
{ name: 'FirstName', index: 'FirstName', width: 150, align: 'left' },
{ name: 'Surname', index: 'Surname', width: 150, align: 'left' },
{ name: 'PostCode', index: 'PostCode', width: 150, align: 'left'}],
pager: jQuery('#pager'),
rowNum: 10,
rowList: [5, 10, 20, 50],
sortname: 'EnquiryID',
sortorder: "desc",
viewrecords: true,
imgpath: '/scripts/themes/steel/images',
caption: 'My first grid'
});
$("#search").filterGrid("#grid", {
gridModel: false,
filterModel: [{
label: 'Search',
name: 'search',
stype: 'text'
}]
});
});
呼吁上述各方:
<script language="javascript" type="text/javascript" src="<%= Url.Content ("~/Scripts/Home.GridDemo.js") %>"></script>
<div id="search"></div>
<table id="grid" cellpadding="0" cellspacing="0"></table>
<div id="pager" style="text-align:center;"></div>
我认为构建自己的网格表更容易。下面是一个使用交替行颜色的示例
<table class="results" width="100%" border="0" cellpadding="5">
<thead class="tablehead">
<tr>
<td width="55px"><b>Country</b></td>
<td width="55px"><b>State</b></td>
<td width="55px"><b>City</b></td>
<td width="55px"><b>Town</b></td>
<td width="55px"><b>Postal</b></td>
</tr>
</thead>
<tbody>
<%
int count = 0;
foreach (var item in (IEnumerable<MY_RESULTS>)ViewData["My_Results"])
{
if (count % 2 == 0) { Response.Write("<tr class='even'>"); } else { Response.Write("<tr class='odd'>"); }
%>
<td><%= Html.Encode(item.Country)%></td>
<td><%= Html.Encode(item.State)%></td>
<td><%= Html.Encode(item.City)%></td>
<td><%= Html.Encode(item.Town)%></td>
<td><%= Html.Encode(item.Postal)%></td>
</tr>
<% count += 1; } %>
</tbody>
</table>
国
状态
城市
镇
邮政的
您只需要为奇数、偶数和桌面背景色设置css类。需要按照本文中的内容设置setGridDefaults:
$(document).ready(function() {
GridDemo.Home.GridDemo.setupGrid($("#grid"), $("#pager"), $("#search"));
});
GridDemo.Home.GridDemo = {
setupGrid: function(grid, pager, search) {
grid.jqGrid({
colNames: ['Int', 'String', 'Date'],
colModel: [
{ name: 'IntProperty', index: 'IntProperty' },
{ name: 'StringProperty', index: 'StringProperty' },
{ name: 'DateProperty', index: 'DateProperty' },
],
pager: pager,
sortname: 'IntProperty',
rowNum: 10,
rowList: [10, 20, 50],
sortorder: "asc",
url: "GridDemoData"
}).navGrid(pager, { edit: false, add: false, del: false, search: false });
search.filterGrid("#" + grid.attr("id"), {
gridModel: false,
filterModel: [{
label: 'Search',
name: 'search',
stype: 'text'
}]
});
}
}) 一,。你在别处调用setGridDefaults吗?如果是,请出示。如果没有,则需要将示例中setGridDefaults的附加选项添加到jqGrid方法的调用中。2.如果这不能解决问题,请显示您的JSON。上面是您示例的一个变体,我可以看到问题所在。谢谢你应该发布你的解决方案,这样其他人可以解决类似的问题。(作为回答,也就是说,你可以回答你自己的问题。)这大约是jqGrid的0.02%。我从来没有说过它是一个替代品,我只是觉得它很容易使用和定制。。可能是您忘记将repeatitems设置为false;不管你是否默认这样做。我碰巧遵循相同的轨迹,得到了相同的行为。“setGridDefaults”是什么?我在你的密码里找不到。它是setupGrid函数吗?如果是这样,为什么你和Stuntz称之为“setGridDefaults”?