在ExtJS中,假设你有一个简单的编辑器网格,其中有两列,X和Y,它们都有一个组合框作为编辑器。
如何使第二列的组合框(Y)中的值可用取决于第一列(X)中的选定值?
因此,根据X中选择的内容,Y中可用的值会相应更改。
答案 0 :(得分:1)
假设您有一个商店支持每个组合框,您可以使用商店的filter
或filterBy
方法根据另一个组合框的当前选择缩小一个组合框的结果。您可以在组合框的'select'
或'change'
事件上调用过滤器功能。我过去成功地使用过这种方法,它可以很好地满足我的需求。我每个组合框有大约200个记录,所以如果你有更多的记录,我不确定这个解决方案的扩展程度如何。
答案 1 :(得分:0)
管理回答我的问题:
由于有问题的EditorGrid使用RowSelectionModel
(而非CellSelectionModel
),我可以将以下内容添加到beforeselect
{{1}的editor
事件中}}:
combobox
根据需要更新了相关商店,Ext.getCmp('EDITORGRID').selModel.getSelected().set('colY','myvalue');
只是设置为返回的第一条记录。
答案 2 :(得分:0)
以下是JoeKuan
的工作示例