0

我有需要根据组合框中选择的内容更新网格的情况。布局使得组合框是顶部表单的一部分,而网格位于底部。

4

1 回答 1

1

首先使用 dojo connect 将组合框的 onChange 事件绑定到如下函数:

dojo.connect(selectFilterGroup,     'onChange',  updateFilter);
dojo.connect(selectFilterParameter, 'onChange',  updateFilter);

然后在函数中调用网格上的过滤器函数:

var updateFilter = function () {
    var filterParams = {};
    var group      = selectFilterGroup.get('value');
    var parameter  = selectFilterParameter.get('value');    
    if (group != '')     filterParams['group_name']  = group;
    if (parameter != '') filterParams['parameter']   = parameter;
    myGrid.filter(filterParams);
}

在这些示例中,selectFilterGroup 和 selectFilterParameter 都是表示组合框的 dijit。

根据您构建网格和组合框的方式,另一种方法是使用过滤器的显示值属性

var group      = selectFilterGroup.get('displayedValue');
于 2011-04-19T11:03:43.977 回答