2012-10-31 4 views
5

私はextjsでプロジェクトを実装しています。私はextjsにはとても新しいです。 私は2つのTextfields Question and Optionでビューを作成しました。また、OKとキャンセルの2つのボタンを作成しました。extjsのストアに値を挿入する方法

マイビューコード:[OK]ボタンをクリックしたときに、

Ext.create('Ext.form.Panel', { 
    title: 'Question-option', 
    width: 300, 
    bodyPadding: 10, 
    renderTo: Ext.getBody(),   
    items: [{ 
     xtype: 'textfield', 
     name: 'Question', 
     fieldLabel: 'Question', 
     allowBlank: false // requires a non-empty value 
    }, { 
     xtype: 'textfield', 
     name: 'Option', 
     fieldLabel: 'Option', 
     vtype: 'Option' // requires value to be a valid email address format 
    }, 
    {xtype: 'button', text: 'Ok'}, 
    {xtype: 'button', text: 'Cancel'} 
] 
}); 

私は店の中にこれらのテキストフィールドのデータを追加したいです。

これで、これらのテキストフィールドのデータをすべてストアに追加するbuttonclickイベントの記述方法を教えてください。

+0

誰かが私を助けてくれますか? –

答えて

5

は、一例として、このストアを取る:

Ext.define ('model', { 
    extend: 'Ext.data.Model' , 
    fields: ['Question', 'Option'] 
}); 

var store = Ext.create ('Ext.data.Store', { 
    model: 'model' 
}); 

// Handler called on button click event 
function handler (button) { 
    var form = button.up('form').getForm(); 

    // Validate the form 
    if (form.isValid()) { 
    var values = form.getFieldValues(); 
    store.add ({ 
     Question: values.Question , 
     Option: values.Option 
    }); 
    } 
    else {} // do something else here 
} 

あなたはフォームデータを取得し、ストアにそれらのデータを追加します。

Cyaz

+0

あなたのreply.AndのためのThanx私はまたそれらの質問とそのオプションをgridviewに追加したい場合、同じquestion.Andこれらの挿入されたオプションをすべてgridviewに表示するために、空白のテキストボックスとしてそのオプション入力フィールドを作る必要がある。だから私はどのような方法でこれを行う必要がありますか? –

+1

店舗をグリッドパネルに接続するだけです。例:Ext.create( 'Ext.grid.Panel'、{title: 'MyGrid'、width:300、height:300、store:store、columns:[{name: 'Question'、dataIndex: 'Question' }、{name: 'オプション'、dataIndex: 'オプション'}]}); この回答が見つかった場合は、正しいものを作成してください;) – Wilk

+0

上記のonbuttonclickイベントを挿入すると、display.controllerコードが取得されません - Ext.define( 'AM.controller.Users'、{ \tが伸びる 'Ext.app.Controller'、ビュー:[ 'user.List'] \t店舗:[ 'ユーザー']モデル:[ 'ユーザ']、 INIT:関数(){ \t this.control( { \t "button":{ \t click:Ext.msg.alert( "Heloo")});} onButtonClick:function(button){var form = button.up( 'form')。getForm() ; if(form.isValid()){ \t var values = form.getFieldValues(); \t store.add({ \t質問:values.Question、 \tオプション:values.Option \t})。 \t} \t}}); –

関連する問題