0

データベースのレコードを送信するための FormPanel フォームを作成しました。FormPanel コード:

Ext.define('MyApp.view.NIForm', {
    extend: 'Ext.form.Panel',
    config: {
        id: 'NIForm',
        items: [
            {
                xtype: 'panel',
                items: [
                    {
                        xtype: 'textfield',
                        docked: 'left',
                        id: 'ORDNUM_39',
                        width: '95%',
                        label: 'Order#',
                        name: 'ORDNUM_39'
                    },
                    {
                        xtype: 'button',
                        docked: 'right',
                        itemId: 'browseOrder',
                        width: '5%',
                        text: '...'
                    }
                ]
            },
            {
                xtype: 'textfield',
                id: 'DESC',
                style: 'margin-top:2px;',
                label: 'Description',
                name: 'DESC'
            },
            {
                xtype: 'numberfield',
                id: 'TNXQTY_39',
                style: 'margin-top:2px;',
                label: 'Quantity',
                name: 'TNXQTY_39'
            },
            {
                xtype: 'panel',
                items: [
                    {
                        xtype: 'textfield',
                        docked: 'left',
                        style: 'margin-top:2px;',
                        width: '95%',
                        label: 'GL Code',
                        name: 'GLREF_39'
                    },
                    {
                        xtype: 'button',
                        docked: 'right',
                        width: '5%',
                        text: '...'
                    }
                ]
            },
            {
                xtype: 'textfield',
                id: 'REFDSC_39',
                style: 'margin-top:2px;',
                label: 'Reference',
                name: 'REFDSC_39'
            },
            {
                xtype: 'button',
                action: 'niProcess',
                itemId: 'mybutton3',
                style: 'margin-top:6px;',
                ui: 'confirm',
                text: 'Process'
            }
        ],
        listeners: [
            {
                fn: 'onBrowseOrderTap',
                event: 'tap',
                delegate: '#browseOrder'
            }
        ]
    }
});

ここで、プロセスボタンのタップイベントですべてのテキストフィールドの値を取得したいと思います。フォームパネルの値を取得するには、次のコード行を記述しました。

var me = this;
var form = this.getNIForm();
var values = form.getValues();
var record = form.getRecord();

私が間違っていることを教えてもらえますか?説明してください。

4

3 に答える 3

0

別のリスナーを追加しましたが、うまく機能しているようです。

listeners: [{
    fn: function () {
        console.info('sdfsd');
    },
    event: 'tap',
    delegate: '#browseOrder'
}, {
    fn: function () {
        console.info(this.getValues());
    },
    event: 'tap',
    delegate: '#mybutton3'
}]

ここにフィドルがあります

于 2013-05-26T00:43:49.870 に答える
0

特定の TextField 値を取得する場合は、

Ext.getCmp('ORDNUM_39').getValue();

于 2013-05-27T04:56:39.007 に答える