2014-09-19 76 views
0

以下是我的代码,我是JQgrid的新手,我确实按照wiki上提供的示例进行了操作,但出于某种奇怪的原因,我无法在导航栏上看到任何搜索选项,任何帮助将非常感谢JQgrid搜索选项不显示

<script src="js/jquery-1.11.0.min.js" type="text/javascript"></script> 
     <script src="js/i18n/grid.locale-en.js" type="text/javascript"></script> 
    <script src="js/jquery.jqGrid.min.js" type="text/javascript"></script> 
    <script src="js/jquery-ui-1.10.4.custom.js" type="text/javascript"></script> 

    <script type="text/javascript"> 
    $(function() { 
     $("#list").jqGrid({ 

      url: "genxml3.php", 
      datatype: "xml", 
      mtype: "GET", 

      colNames: ["A", "T", "E"], 
      colModel: [ 

       { name: "A", Index: 'Name', width: 155 }, 
       { name: "T", width: 290 }, 
       { name: "E", width: 80, align: "right" ,sortable: false}, 

      ], 
      pager: "#pager", 
      height:"100%", 
      rowNum: 20, 
      rowList: [40, 80, 120], 
      rownumbers: true, 
      rownumWidth: 40, 
      sortname: "invid", 
      sortorder: "desc", 
      viewrecords: true, 
      gridview: true, 
      autoencode: true, 
      caption: "Digital List" 


     }) 

     }); 
    jQuery("#list").jqGrid('navGrid','#pager', {edit:false,add:false,del:false}, {}, {}, {}, {multipleSearch:true, multipleGroup:true, showQuery: true} 
     ); 

     </script> 

回答

1

原因在我看来navGrid调用错误的地方。按照您的意愿,将置于$(function() {...})之外。因此在之前navGrid的呼叫将被制作为,网格被创建并且navGrid失败。您需要移动上面一行的行jQuery("#list").jqGrid('navGrid', ...);以解决问题。

此外,您应该从列"A"删除Index: 'Name'。首先JavaScript是区分大小写的,并且只有indexIndex属性。此外,建议不要使用index属性,它不是真正需要的。选项sortname: "invid"可能没有多大意义,因为您没有名称为invid的列。

另一种说法。您应该包含gridview: true选项以提高电网的性能并考虑使用loadonce: true选项。如果您不使用loadonce: true选项,则服务器(url: "genxml3.php")必须实现服务器端分页,排序和过滤(搜索)。如果数据集不是很大(例如少于1000或10000行),如果服务器返回所有数据(如果有任何用途,最初按sortname排序)可能会更有效。 jqGrid会将返回的数据保存在内部data参数中,这些参数通常用于使用datatype: "local",然后它会将datatype更改为"local"。所以jqGrid将在本地执行排序,分页和过滤/搜索而没有任何请求到服务器。通常情况下,如果行数不是很大,本地排序可以快速作为对服务器的请求。

+0

感谢您的宝贵意见,我确实将navGrid()移动到了上面一行,但我仍然无法看到任何搜索选项。 – hitek 2014-09-22 13:29:09

+0

可能是我缺少一个库或插件,我必须包括? – hitek 2014-09-22 13:29:45

+0

@hitek:没有更多需要。你有在线演示吗? – Oleg 2014-09-22 13:37:11