我正在尝试使用新行,colNames和colModel重新加载jqGrid.行数据似乎加载正常,但列似乎没有刷新.我已经尝试过使用GridUnload和GridDestroy,但我最终完全丢失了jQuery DOM实例,并且不再加载任何数据.
var grid = $('#my-grid');
if(grid[0].grid == undefined) {
grid.jqGrid(options);
} else {
grid.setGridParam(options);
grid.trigger('reloadGrid');
}
网格实例很重要,因为它将作为参数传递给其他对象.这些对象可以附加侦听器或触发事件.
我使用的是4.4.2版本
解决方法:
reloadGrid仅重新加载网格的主体,而不更改将在创建网格时创建的列标题.
如果您需要更改列数或使用colNames和colModel代替旧网格,或者重新创建网格.您可以先使用GridUnload方法然后创建新网格(在您的情况下调用grid.jqGrid(数据)).重要的是,如果你在代码中的网格变量中将jQuery选择器缓存到网格中,你必须在调用GridUnload后再分配一次网格,所以你应该做类似grid = $(“#grid”);直接调用GridUnload后.
有关更多详细信息和代码示例,请参见the answer.
标签:jquery,javascript,jqgrid 来源: https://codeday.me/bug/20190517/1122683.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。