【问题标题】:enhancedgrid filter plugin at server-side in DojoDojo 中服务器端的增强网格过滤器插件
【发布时间】:2013-09-24 10:35:57
【问题描述】:

我是dojo的新手,..在这方面苦苦挣扎,请帮助.....

我在 dojo 中使用 EnhancedGrid 中的过滤器插件....我在客户端做得很好,但来到服务器端我不知道如何调用 servlet 并将过滤后的行放入网格中,请帮助解决这个问题。 ....

我尝试过这样的事情......

           grid = new EnhancedGrid({
                id : 'grid',
                store : yourStore,
                structure : layout,
                rowSelector : '20px',
                plugins : {
                            search : true,
                            pagination : {
                                pageSizes : [ "50", "100"],
                                description : true,
                                sizeSwitch : true,
                                pageStepper : true,
                                gotoButton : true,
                                maxPageStep : 2,
                                position : "bottom"

                            },
                            filter : {

                                closeFilterbarButton : true,
                                ruleCount : 5,
                                ruleCountToConfirmClearFilter:2,
                                itemsName : "rows",
                                isServerSide:true,
                                isSateful:true,
                                url:"http:myaddress:8080/GridExample/Filter",
                                setupFilterQuery: setupFilter



                            }
                        }
                    });


                var setupFilter = function(commands, request){

                        if(commands.filter && commands.enable){
                            // some filter is defined and valid. You can modify the request object here.
                          }else{
                            // no filter is valid.
                          }
                        };
                    grid.placeAt("myGrid");
                    grid.startup();

                }
            });

【问题讨论】:

    标签: javascript dojo dojox.grid.datagrid dojox.grid


    【解决方案1】:

    首先:你加载的插件正确吗?

       dojo.require("dojox.grid.enhanced.plugins.Filter");
    

    也许这可以帮助您解决问题:

    http://dojotoolkit.org/reference-guide/1.8/dojox/grid/EnhancedGrid/plugins/Filter.html#introduction-to-server-side-filtering

    问候

    更新 1

    你好! 我必须深入了解 Web 的宽度,但最近我想我找到了如何定义过滤器的问题的答案。

     plugins: {
                filter: {
                  isServerSide: true,
                  setupFilterQuery: function(commands, request){
                    if(commands.filter && commands.enable){
                         console.log(commands.filter);
                         request.query = {
                             "Name": "L*"
                                          }       
                    }
                   }
                   itemsName:'songs',
                   closeFilterbarButton: true,
                   ruleCount: 8
                  }
               }
    

    我从这里获取这个:https://bitbucket.org/dojo/dojox/src/64328839903b/grid/tests/enhanced/test_enhanced_grid_filter.html

    此示例定义了一个过滤器,用于在商店中搜索所有以字母“L”开头的名称。使用其他受支持的运算符,您可以定义自己的过滤器。

    http://dojotoolkit.org/reference-guide/1.9/dojox/grid/EnhancedGrid/plugins/Filter.html#supported-operators

    希望对您有所帮助!

    问候

    【讨论】:

    • 是的,我加载了那个过滤器插件.....我已经浏览了那个链接,但我不明白怎么做......请帮我举个例子
    • 我必须在函数@MiBrock 中放置(命令、请求)的内容
    • 您好,请看这里:stackoverflow.com/questions/6069246/…
    • 嗨!更新了我的帖子。看看
    猜你喜欢
    • 2013-04-04
    • 1970-01-01
    • 2019-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多