5

私はextjsでプロジェクトを実装しています。私はextjsが初めてです。私は2つのテキストフィールドの質問とオプションでビューを作成し、OKとキャンセルの2つのボタンも作成しました。

私のビューコード:

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'}
 ]
});

[OK] ボタンをクリックすると、これらのテキストフィールドのデータをストアに追加したいと思います。

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

4

1 に答える 1

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

于 2012-10-31T14:08:37.873 に答える