各位哥哥姐姐们,我想用Ext做个下拉框,从后台获得一个数组(数组中放的是对象,拥有id和name属性),name作为显示,id作为option的value,显示在页面上的下拉框中,请问怎么做啊,我以前没有用过Ext,你们能不能给我一个例子啊,谢谢了

解决方案 »

  1.   

    下载一个ext的源包,那里有例子,而且很全面
      

  2.   

    给你一个 ext4beta下载地址http://download.csdn.net/source/3195325
      

  3.   


    fieldLabel : '业务员',
    emptyText : '请选择',
    xtype : 'combo',
    mode : 'remote',
    loadingText : '加载中...',
    id : 'saleId',
    name : 'saleId',
    hiddenName : 'salePersonId',// 提交到后台的name属性 不能与id同属性
    valueField : 'salePersonId',// select显示的text
    displayField : 'salePersonName',// value
    store : new Ext.data.JsonStore({
    url : 'getSalesList.do',
    root : 'root',
    fields : ['salePersonId', 'salePersonName']
    }),
    listeners : {
    "select" : function(o) {
    var value = o.value;
    Ext.Ajax.request({
    url : "order/getTel.do?saleId="
    + value,
    success : function(response) {
    var tmp = Ext.util.JSON
    .decode(response.responseText);
    myForm.findById('saleTel')
    .setValue(tmp.tel);
    myForm
    .findById('salePersonName')
    .setValue(tmp.name);
    }
    })
    }
    },
    editable : false,// 是否允许输入
    triggerAction : "all",
    selectOnFocus : true,
    maxLength : 40,
    allowBlank : false
      

  4.   


    var store = new Ext.data.JsonStore({
       url : '****.action',
       fields : ['id','name']    //要用到的属性
    });
    store.load();var combo = new Ext.form.ComboBox({
       id : 'exam',
       name : 'exam',
       listWidth : 100,
       triggerAction : true,
       displayField : 'name',   //要显示的属性名
       valueField : 'id'       //作为值的属性
    });这是简单点的例子,,,LZ可以了解下combox的其他属性
      

  5.   


    忘了一个属性:
        store : store
      

  6.   

    你的这个我试了,怎么还是显示不出来啊,后台的方法是怎么写的呢?我的是通过out.write(json)
    在combo中加了个属性applyTo:'com1',显示到相应的组件中