Jquery JQGrid列选择器

Jquery JQGrid列选择器,jquery,jqgrid,Jquery,Jqgrid,在jqGrid中设置列和其他必需的内容之后,我添加了以下代码 .navGrid('#pager', { search: false, view: false, del: false, add: false, edit: false }, {}, // default settings for edit {}, // default settings for add {}, // delete instead that del:false we need

在jqGrid中设置列和其他必需的内容之后,我添加了以下代码

.navGrid('#pager', { search: false, view: false, del: false, add: false, edit: false },
       {}, // default settings for edit
       {}, // default settings for add
       {}, // delete instead that del:false we need this
       {closeOnEscape: true, multipleSearch: true, closeAfterSearch: true }, // search options
       {} /* view parameters*/
     ).jqGrid ('navButtonAdd', '#pager', { caption: "", buttonicon: "ui-icon-calculator", title: "choose columns",
         onClickButton: function() {
             grid.jqGrid('columnChooser');
         }}).trigger("reloadGrid");
网格正在加载。我正在尝试实现列选择器。当我点击按钮时,我得到
“网格未定义”
。我是否丢失了任何文件,或者我的编码方式是否错误


我被困在这里了。如果我做错了,请纠正我。

只需在声明语句之前添加gridId,这样就可以根据网格进行标识,如下所示:

$("#grid_name").navGrid('#pager', { search: false, view: false, del: false, add: false, edit: false },
       {}, // default settings for edit
       {}, // default settings for add
       {}, // delete instead that del:false we need this
       {closeOnEscape: true, multipleSearch: true, closeAfterSearch: true }, // search options
       {} /* view parameters*/
     ).jqGrid ('navButtonAdd', '#pager', { caption: "", buttonicon: "ui-icon-calculator", title: "choose columns",
         onClickButton: function() {
             grid.jqGrid('columnChooser');
     }}).trigger("reloadGrid");
基本错误

我在使用下面的代码

jQuery('#list1').jqGrid
但如果我们想在其他地方使用网格,我们需要使用

在顶部添加

  var grid = jQuery('#list1');

您是否在上面指定的
.navGrid()
函数之前添加了
$(“#grid_name”)
?我们需要添加。您可以像这样共享它吗
$(“#grid_name”).navGrid(“#pager”,{search:false,view:false,…
已为您的问题添加了答案。如果问题解决,您可以接受是的,我将标记它。如何防止navbutton被添加多次?我单击search Button的次数与我单击search Button的次数相同。另一个问题是,我单击search时navbutton被添加到网格中多次。如何避免此问题?我想您正在调用
loadComplete()或
gridComplete()中的函数
。将
navgrid
的定义添加到jqGrid的定义之外。这样它只会被调用一次。如果您可以与完整的代码共享一个,则会更容易。我认为您可以不使用
search:false
参数,将多重搜索参数分离为
{multiplesearch:true},{closeOnEscape:true}
。还要将pager的值从
jquery(“#pager”)
更改为
“#pager”