JQGrid';未定义';错误

JQGrid';未定义';错误,jqgrid,Jqgrid,我在尝试使用JQGrid时遇到一个JavaScript错误: <script type="text/javascript"> jQuery(document).ready(function(){ jQuery("#list").jqGrid({ url:'/myUrlPage', datatype: 'json', mtype: 'GET', colNames:['Id', 'Name', 'Phone'], colModel :[ {name:

我在尝试使用JQGrid时遇到一个JavaScript错误:

<script type="text/javascript">
  jQuery(document).ready(function(){

  jQuery("#list").jqGrid({
  url:'/myUrlPage',
  datatype: 'json',
  mtype: 'GET',
  colNames:['Id', 'Name', 'Phone'],
  colModel :[
    {name:'id', index:'id', width:55},
    {name:'name', index:'name', width:90},
    {name:'phone', index:'phone', width:150, sortable:false} ],
  pager: jQuery('#pager'),
  rowNum:10, rowList:[10,20,30],
  sortname: 'id',
  sortorder: "desc",
  viewrecords: true,
  imgpath: 'themes/basic/images',
  caption: 'My first grid' }); });
</script>
“消息:'undefined'为空或不是对象”

当我在服务器上调试时,我看到我的JSON输出如下:(id值不在双引号内是否重要?

。。我的页面如下所示:

<script type="text/javascript">
  jQuery(document).ready(function(){

  jQuery("#list").jqGrid({
  url:'/myUrlPage',
  datatype: 'json',
  mtype: 'GET',
  colNames:['Id', 'Name', 'Phone'],
  colModel :[
    {name:'id', index:'id', width:55},
    {name:'name', index:'name', width:90},
    {name:'phone', index:'phone', width:150, sortable:false} ],
  pager: jQuery('#pager'),
  rowNum:10, rowList:[10,20,30],
  sortname: 'id',
  sortorder: "desc",
  viewrecords: true,
  imgpath: 'themes/basic/images',
  caption: 'My first grid' }); });
</script>

jQuery(文档).ready(函数(){
jQuery(“#list”).jqGrid({
url:“/myUrlPage”,
数据类型:“json”,
mtype:'获取',
colNames:['Id','Name','Phone'],
colModel:[
{名称:'id',索引:'id',宽度:55},
{名称:'name',索引:'name',宽度:90},
{name:'phone',index:'phone',width:150,sortable:false},
pager:jQuery(“#pager”),
rowNum:10,行列表:[10,20,30],
sortname:'id',
巫师:“描述”,
viewrecords:是的,
imgpath:'themes/basic/images',
描述:'我的第一个网格'});});

如果您将

jsonReader: { repeatitems: false }
jqGrid中的参数。请参阅中的详细信息

此外,我对你的演示做了一些修改。你可以看到。我建议您删除
imgpath
参数。相反,我建议您使用
height:“auto”
,它在大多数情况下都会给您带来好的效果。与其使用
jQuery(“#pager”),不如只使用
“#pager”
。如果使用寻呼机和
viewrecords:true
,则还应增加某些列的
宽度值。我在我的演示中包括了
jQuery(“pager#u left”).hide()语句,用于隐藏您现在不使用的寻呼机的某些块。如果要开始使用按钮,则应删除该行

关于您使用的JSON数据,还有一点需要说明。
id
page
total
records
属性的值可以是字符串或整数,因此
“id”:1
将给出与
“id”:“1”相同的结果

了解如何填写
页面
总计
记录
,这一点很重要。当前值为page=1、total=20、records=5,数据包含6行。所有的数据都毫无意义。jqgrid要求服务器提供附加参数,并将附加参数添加到URL中,以提供一页数据,每页10行(
rowNum:10
)。您从服务器得到的答案意味着您的数据总共包含5项(记录=5)。如果您将数据(5项)按页(每页10项)排序,您将有20页(总计=20),第一页(第=1页)将填充数据(6项)。JSON数据中的
页面
总计
记录
的奇怪值如下所示,即页面中的奇怪值:


我建议您阅读我试图描述jqGrid为什么需要如此奇怪的JSON数据格式的地方。

具体错误是我使用的“f未定义”:jquery-1.4.2.min.js、grid.locale-en.js、jquery.jqGrid_3.8.2.min.js谢谢我迫不及待地想试试。@user879220:在“我迫不及待想试试”下面是什么意思?你不能点击吗?它不会被显示吗?或者不能在网格中插入参数
jsonReader:{repeatitems:false}
?我不明白你的意思。@user879220:不客气!如果问题解决了,你应该把答案标记为。