求大神指教ExtJs设置combo默认值

能不能在加载的时候设置第一项为默认值?... 能不能在加载的时候设置第一项为默认值? 展开
 我来答
cqh46
推荐于2016-10-30 · TA获得超过3292个赞
知道大有可为答主
回答量:2149
采纳率:100%
帮助的人:1256万
展开全部

value: '你的值'

Ext.onReady(function() {
    var sexStore = Ext.create('Ext.data.Store', {
        fields : ['code', 'name'],
        data : [{
            name : "男",
            code : "M"
        }, {
            name : "女",
            code : "F"
        }]
    });
    var sexCombo = Ext.create('Ext.form.field.ComboBox', {
        store : sexStore,
        displayField : 'name',
        valueField : 'code',
        editable : false,
        width : 200,
        labelWidth : 60,
        labelAlign : 'right',
        fieldLabel : '性别',
        value : 'F'
    });
    Ext.create('Ext.container.Viewport', {
        layout : 'absolute',
        items : [sexCombo]
    });
});

 

请修改分类到 JavaScript 。 满意请采纳~

追问
你这样是知道值啊,但我不知道他数据集里面会放什么东西该怎么办?能不能通过索引设置啊?
追答
sexCombo.on("afterrender", function() {
    sexCombo.setValue(sexStore.getAt(0).data.code);
});

加这个方法,当 sexCombo 加载完成后 读取数据集 sexStore,从数据集的第一个索引找出

code, 也就是 valueField 对应的字段。然后再复制到 sexCombo。

object8888
2013-12-16 · TA获得超过274个赞
知道小有建树答主
回答量:302
采纳率:100%
帮助的人:307万
展开全部

很简单 给你一段代码参考 值是后台服务器返回的 放到articleComboStore里面 

var articleCombo = new Ext.form.ComboBox({
colspan : 2,
name : 'articleId',
fieldLabel : '学习内容',
displayField : 'value',
valueField : 'key',
store : articleComboStore,
mode : 'local',
typeAhead : true,
forceSelection : true,
triggerAction : 'all',
width : 355,
emptyText : '请选择 .... ',
selectOnFocus : true
});
articleComboStore.on("load",function(){   //对 ComboBox 的数据源加上 load 事件就好
articleCombo.setValue(this.getAt(0).get('key'));
});
articleComboStore.load();
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式