如何设置extjs textfield的值?

r.r*_*r.r 11 extjs set textfield setvalue

我有很多用户数据的文本字段.我希望从DB设置它.

items: [{
                        xtype: "form",
                        bodyPadding: 5,
                        border: false,
                        defaults: {
                            xtype: "textfield",
                            inputType: "text",
                            anchor: "100%"
                        },
                        items: [{
                            fieldLabel: 'Username:',
                            readOnly: true,
                            value: 'Admin',
                            name: "username"
                        }, {
Run Code Online (Sandbox Code Playgroud)

我有一个openDB.js用方法命名的外部类,getUserByUsername() 这里是小代码,它将如何在其他视图中使用,它可以工作,但在我的实际视图中,我无法设置文本字段的值.请帮忙怎么做?

 openDB.getUserByUsername(user.username).then(function(userDetails) {
            me.setTitle("Welcome " + userDetails.mail + "!");
        });
Run Code Online (Sandbox Code Playgroud)

我想用这样的东西做这样的事 value: 'Admin'......

我在Sencha论坛找到了一些方法,但我可以使用吗?

setValue: function(value) {
        var me = this;
        me.setRawValue(me.valueToRaw(value));
        return me.mixins.field.setValue.call(me, value);
    },
Run Code Online (Sandbox Code Playgroud)

r.r*_*r.r 34

经过几个小时的战斗 - >最佳解决方案:

items: [{
                        fieldLabel: 'Username:',
                        id: 'usernameID',
                        readOnly: true,
                        value: user.username,
                        name: "username"
}]
... 
var name = Ext.getCmp('usernameID').setValue('JohnRambo');
Run Code Online (Sandbox Code Playgroud)

  • 太好了,如果有很多的话,您可以:Ext.Object.each(values,function(key,value){Ext.getCmp(key).setValue(value);}); (2认同)