2

フォームテキストフィールドを含むポップアップウィンドウがあります。テキストフィールドにアクセスするにはどうすればよいですか?これが私の試みです:

function foo(){
    bar = Ext.Viewport.add({
    xtype: 'panel',
    scrollable: true,
    centered: true,
    width: 400,
    height: 300,
    items:[{
            xtype: 'textfield',
            name: 'name',
            label: 'Name'
        }, {
            docked: 'bottom',
            xtype: 'titlebar',
            items:[{
                    xtype: 'button',
                    ui: 'normal',
                    text: 'Send',
                    go: 'testsecond',   
                    handler:function(){
                        alert(bar.getValues().name);
                    }  
            }]
        }]
    });
}
4

1 に答える 1

1

いいえ。このようにする必要はありません。設定xtype:'panel'すると、メソッドを使用してフォーム値にアクセスできなくなりますform.getValues()

代わりに、次のようにしてください。

パネルのxtypeをとして指定しformpanelます。

以下を参照してください:

bar = Ext.Viewport.add({
    xtype: 'formpanel',
    scrollable: true,
    centered: true,
    width: 400,
    height: 300,
    items:[{
            xtype: 'textfield',
            name: 'name',
            label: 'Name'
        }, {
            docked: 'bottom',
            xtype: 'titlebar',
            items:[{
                    xtype: 'button',
                    ui: 'normal',
                    text: 'Send',
                    go: 'testsecond',   
                    handler:function(){
                        Ext.Msg.alert("Name: "+bar.getValues().name);
                    }  
            }]
        }]
    });

出力は次のようになります。

ここに画像の説明を入力してください

于 2012-04-25T16:42:19.367 に答える