首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >jqGrid:如何调用'reloadGrid‘从外部筛选器刷新网格

jqGrid:如何调用'reloadGrid‘从外部筛选器刷新网格
EN

Stack Overflow用户
提问于 2013-06-26 22:23:20
回答 1查看 34K关注 0票数 7

我在jqGrid之外有一些过滤器,可以触发网格重新加载。这篇文章让我很好地了解了如何使用postData选项实现它:How to filter the jqGrid data NOT using the built in search/filter box不幸的是,代码片段是片段,我不知道调用的整体顺序应该是什么。以下是我当前方法的简略视图:

代码语言:javascript
运行
复制
<script>
  $(document).ready(function() {
    $("#submit").click(function(e) {
      e.preventDefault();
      myGrid.trigger('reloadGrid');
    }); 
  });

var url="${servicesUrl}/projects";

var myGrid = $("#projectList").jqGrid({
    url: url,
    datatype: 'json',
    mtype: 'GET',  
    // ...
});
</script>

我应该如何组织代码,以便每次单击Submit按钮都会触发网格重新加载?一旦我解决了这个问题,我相信我将能够添加posData部件,我的问题主要是整个调用序列的问题。我不确定ready()函数中应该包含哪些调用,以及如何正确调用“reloadGrid”。非常感谢您的帮助。

EN

Stack Overflow用户

回答已采纳

发布于 2013-06-26 22:34:11

这对我来说很有效:我在beforeRequest事件上设置了一个回调,它在每次请求之前更新postData属性。

注意,您需要将所有的jqGrid初始化代码放在$(document).ready(function(){});函数中,否则您的表元素可能还不在DOM中

代码语言:javascript
运行
复制
var url="${servicesUrl}/projects";

$(document).ready(function() {
    var $table = $("#projectList");

    $table.jqGrid({
        url: url,
        datatype: 'json',
        mtype: 'GET',  

        beforeRequest: function() {
            var postData = $table.getGridParam('postData');
            //add parameters to postData here
        }
        // ...
    });

    $("#submit").click(function(e) {
        e.preventDefault();
        $table.trigger('reloadGrid');
    }); 
});
票数 6
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17322817

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档