如何在extjs 4中选择将多个值设置为组合框

时间:2013-12-13 07:16:29

标签: combobox grid extjs4

我在extjs4工作。我查看了以下组件 -

  1.        xtype: 'boxselect',
            displayField: 'emailAddress',
            valueField: 'id',
            store : store

2.xtype : 'grid',

                selModel:Ext.create('Ext.selection.CheckboxModel', {
                    headerWidth : 40,
                    showHeaderCheckbox : false,
                    ignoreRightMouseSelection : true,
                    checkOnly : true
                }),
                width :350,
                border : true,
                store : store,
                columns : [{
                    dataindex : 'firstName',
                    header : 'firstName'
                },{
                    dataindex : 'lastName',
                    header : 'lastName'
                },{
                    dataIndex : 'emailAddress',
                    header : 'email'
                }]
3.xtype : 'button',
  text : 'Add'

在此添加按钮上单击,我想将网格选择多个值添加到boxselect的选定值及其先前选择的值,并希望在组合框中显示这些值为选中。 我试了一下=

var previousvalues = [12,13,14]
var newvalues = [15,16]

Ext.getCmp('comboId').setValue(previousvalues + newvalues );

但它形成了一个emailId并将其设置为一个值,而不是单个的emailId  那么如何在extjs4中执行此操作

1 个答案:

答案 0 :(得分:0)

您无法在javascript中使用+运算符联系两个数组。

ExtJs框架已经构建了用于合并两个数组Ext.Array.merge()

的函数

所以你可以设置这样的新值:

var values = Ext.Array.merge( previousvalues, newvalues );

Ext.getCmp('comboId').setValue( values );