+ -
当前位置:首页 → 问答吧 → Ext Combobox问题,急!!

Ext Combobox问题,急!!

时间:2011-01-04

来源:互联网

comboBox是动态的,二级联动的.由于业务需要,在加载页面时一定要选中从后台取出的其中一条数据(已实现),但是
setValue()设置的是displayField 的值,我想问怎么动态设置valueField 的值..急..!!!
JScript code
    swjgStore = new Ext.data.Store({
                url : 'getSwjgComboBoxValuePeccancyRecord.action',
                reader : new Ext.data.JsonReader({
                            root : 'swjgRows'
                        }, Ext.data.Record.create([{
                                    name : 'orgId'
                                }, {
                                    name : 'name'
                                }]))
            });
    swjgStore.load();
    var swjgCombo = new Ext.form.ComboBox({
                store : swjgStore,
                fieldLabel : '税务机关',
                displayField : 'name',
                labelStyle : "text-align:left;width:60;",
                anchor : '90%',
                hiddenName:'orgId',
                typeAhead : true,
                valueField : 'orgId',
                editable : false,
                forceSelection : true,
                triggerAction : 'all',
                selectOnFocus : true
            });

    swjgStore.on('load', function() {
                var swjgComboValue = swjgStore.getAt(0);
                swjgCombo.setValue(swjgComboValue.get('name'));
                
                
            });

    var sgyStore = new Ext.data.Store({
                url : 'getSgyComboBoxValuePeccancyRecord.action',
                reader : new Ext.data.JsonReader({
                            root : 'sgyRows'

                        }, Ext.data.Record.create([{
                                    name : 'code'
                                }, {
                                    name : 'name'
                                }]))
            });
    sgyStore.on("beforeload", function(store, options) {
                var swjgId = swjgCombo.getValue();
                var new_params = {
                    swjg : swjgId
                };
                Ext.apply(options.params, new_params);
                baseParams : {
                    swjgId : swjgId
                }

            });
    swjgCombo.on('select', function() {
                sgyCombo.clearValue();
                sgyStore.load({});
            });

    var sgyCombo = new Ext.form.ComboBox({
                store : sgyStore,
                fieldLabel : '税管员',
                displayField : 'name',
                valueField : 'code',
                typeAhead : true,
                editable : false,
                forceSelection : true,
                triggerAction : 'all',
                emptyText : '请选择...',
                selectOnFocus : true,
                labelStyle : "text-align:left;width:60;",
                anchor : '90%'
            });

作者: jr375006471   发布时间: 2011-01-04

就是setValue()关键是你这个set进去的值要和store里面的value要相同。那么默认选定就是这条数据了。

作者: llpoo   发布时间: 2011-01-04

热门下载

更多