{
   fieldLabel:'性别',
   xtype:'combo',
   name:'setText',
   hiddenName:'sex',
   store:new Ext.data.SimpleStore({
   fields:['value', 'text'],
   data:[
   ['1', '男'],
   ['2', '女']
   ]
   }),
   emptyText:'请选择',
   valueField:'value',
   displayField:'text',
   mode:'local',
   readOnly:true,
   triggerAction:'all',
   },下拉框如上面所示:但是没有显示右边弹出下拉框的那个箭头,不知道是为什么?
FrieBug下面也没看到错误。

解决方案 »

  1.   

    多了逗号 
    {
    fieldLabel:'性别',
    xtype:'combo',
    name:'setText',
    hiddenName:'sex',
    store:new Ext.data.SimpleStore({
    fields:['value', 'text'],
    data:[
    ['1', '男'],
    ['2', '女']
    ]
    }),
    emptyText:'请选择',
    valueField:'value',
    displayField:'text',
    mode:'local',
    readOnly:true,
    triggerAction:'all',},改过后可以出来了
    Ext.onReady(function()
    {
    var p = new Ext.Panel({
    title : 'My Panel',
    collapsible : true,
    applyTo : 'dd',
    frame :true,
    width : 400,
    autoHeight :true,
    items : [{
    fieldLabel : '性别',
    height :300,
    xtype : 'combo',
    name : 'setText',
    hiddenName : 'sex',
    store : new Ext.data.SimpleStore({
    fields : ['value', 'text'],
    data : [['1', '男'], ['2', '女']]
    }),
    emptyText : '请选择',
    valueField : 'value',
    displayField : 'text',
    mode : 'local',
    readOnly : true,
    triggerAction : 'all'
    }]
    });
    });
    </script>
    </head>
      
      <body>
      <div id="dd"></div>
      </body>
      

  2.   


    去了逗号,加了height,我这里还是没有……
      

  3.   


    var form = new Ext.form.FormPanel({
       title:'学生信息编辑',
       applyTo:'form',
       width:300,
       autoHeight:true,
       frame:true,
       defaultType:'textfield',
       defaults:{
       width:250,
       allowBlank:false
       },
       items:[
       {
       xtype:'hidden',
       name:'id'
       },{
       fieldLabel:'学号',
       name:'code'
       },{
       fieldLabel:'姓名',
       name:'name',
       },{
       fieldLabel:'年龄',
       xtype:'numberfield',
       allowNegative:false,
       allowDecimals:false,
       minValue:1,
       maxValue:100,
       maskRe:/\d/
       },{
       fieldLabel:'性别',
       xtype:'combo',
       height:300,
       id:'sexBox',
       name:'setText',
       hiddenName:'sex',
       store:new Ext.data.SimpleStore({
       fields:['value', 'text'],
       data:[
       ['1', '男'],
       ['2', '女']
       ]
       }),
       emptyText:'请选择',
       valueField:'value',
       displayField:'text',
       mode:'local',
       readOnly:true,
       triggerAction:'all'
       },{
       fieldLabel:'政治面貌',
       name:'political',
       xtype:'combo',
       store:new Ext.data.SimpleStore({
       fields:['text'],
       data:[['群众'], ['团员'], ['党员']]
       }),
       emptyText:'请选择',
       mode:'local',
       triggerAction:'all',
       valueField:'text',
       displayField:'text',
       readOnly:true
       },{
       fieldLabel:'籍贯',
       name:'origin'
       },{
       fieldLabel:'专业',
       name:'professional'
       }
       ],
       buttons:[{
       text:'添加',
       },{
       text:'清空',
       },{
       text:'修改'
       }]
       });
      

  4.   

    多了好几个逗号按照下面格式能够出来
    <div id="pop"></div>Ext.onReady(function() {
    var form = new Ext.form.FormPanel( {
    title : '学生信息编辑',
    applyTo : 'pop',
    width : 300,
    autoHeight : true,
    frame : true,
    defaultType : 'textfield',
    defaults : {
    width : 250,
    allowBlank : false
    },
    items : [ {
    xtype : 'hidden',
    name : 'id'
    }, {
    fieldLabel : '学号',
    name : 'code'
    }, {
    fieldLabel : '姓名',
    name : 'name'
    }, {
    fieldLabel : '年龄',
    xtype : 'numberfield',
    allowNegative : false,
    allowDecimals : false,
    minValue : 1,
    maxValue : 100,
    maskRe : /\d/
    }, {
    fieldLabel : '性别',
    xtype : 'combo',
    height : 300,
    id : 'sexBox',
    name : 'setText',
    hiddenName : 'sex',
    store : new Ext.data.SimpleStore( {
    fields : [ 'value', 'text' ],
    data : [ [ '1', '男' ], [ '2', '女' ] ]
    }),
    emptyText : '请选择',
    valueField : 'value',
    displayField : 'text',
    mode : 'local',
    readOnly : true,
    triggerAction : 'all'
    }, {
    fieldLabel : '政治面貌',
    name : 'political',
    xtype : 'combo',
    store : new Ext.data.SimpleStore( {
    fields : [ 'text' ],
    data : [ [ '群众' ], [ '团员' ], [ '党员' ] ]
    }),
    emptyText : '请选择',
    mode : 'local',
    triggerAction : 'all',
    valueField : 'text',
    displayField : 'text',
    readOnly : true
    }, {
    fieldLabel : '籍贯',
    name : 'origin'
    }, {
    fieldLabel : '专业',
    name : 'professional'
    } ],
    buttons : [ {
    text : '添加'
    }, {
    text : '清空'
    }, {
    text : '修改'
    } ]
    });
    });
      

  5.   

    不是逗号的问题,是bug,我用的是extjs 3,readOnly改成editable就行了。
      

  6.   

    不一定是bug,你见 comboBox 控件有 readOnly  这属性了吗,没有当然不行了
    我是没见有这属性
      

  7.   

    comboBox有readOnly的。
    Extjs是在3.3以后引入了editable既可编辑,当editable为false时不可编辑,代替了原来的readOnly功能
    现在的的readOnly理解成只读,下拉菜单选择也能改变comboBox的值,违背只读原理,所以当readOnly为true时下拉菜单都没有了。
    两个属性不同概念~多看看API就懂了~不过EXTJS每个版本改动都有点大~确实有点恼火