我是道场的新手,在这方面苦苦挣扎,请帮助.....
我在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();
}
});
答案 0 :(得分:0)
首先:你正确加载插件吗?
dojo.require("dojox.grid.enhanced.plugins.Filter");
也许这可以帮助您解决问题:
此致
更新1
你好! 我必须深入挖掘网络的宽度,但最近我认为我找到了如何定义过滤器的问题的答案。 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”开头的所有名称。使用其他支持的运算符,您可以定义自己的过滤器。
希望这能帮到你!
此致