2014-11-25 1 views
0

형태와 내가 양식에서 데이터를 얻을 필요가 몇 필드에서 데이터를 얻을 수 Extjs4을 정의되지 않습니다 및 방법은 버튼이 있습니다 :기록은 내가 버튼으로 윈도우가 입력이

enter: function (button) {  
     var win = button.up('window'), 
      form = win.down('form'), 
      record = form.getRecord(), 
      values = form.getValues(); 
     record.set(values); 
     win.close(); 
     this.getUsersStore().sync(); 

여기에 기록 정의되지 않았습니다. 내가 뭘 잘못 했니? ///////////////////////////////////////////////////////////////////

Ext.define('ExtMVC.view.portlet.Login', { 

    extend: 'Ext.window.Window', 
    alias: 'widget.login', 
    layout: 'fit', 
    title: 'LogIn', 
    width: 300, 
    height: 150, 
    autoShow: true, 
    store: 'LoginModels', 

    initComponent: function() { 
     this.items = [ 
      { 
       xtype: 'form',     
       items: [ 
        { 
         xtype: 'textfield', 
         name: 'Name', 
         fieldLabel: 'Name', 
         style: { 'margin': '10px' }, 
        }, 
        { 
         xtype: 'textfield', 
         name: 'Password', 
         fieldLabel: 'Password', 
         style: { 'margin': '10px' }, 
        }      
       ] 
      } 
     ]; 

     this.buttons = [ 
      { 
       text: 'Enter', 
       action: 'enter', 
       //handler: this.enter 
      }, 
      { 
       text: 'Cancel', 
       scope: this, 
       handler: this.close 
      }, 
      { 
       text: 'Sing in', 
       scope: this, 
       handler: this.close 
      } 
     ]; 

     this.callParent(arguments); 


    } 
}); 

답변

1

시도는이 코드 당신이이

values=form.getForm().getValues(); 
+0

작동하지 않는 설정() - NULL – TimurYakov

+0

게시 얻을 양식 코드 –

+0

내 게시물 //// – TimurYakov

0

로 교체 : 양식 여기

///////////////////

form.getRecord()를 통해 가져 오기 전에 form.loadRecord()를 사용하여 폼을로드하십시오. 그렇지 않으면 form.getRecord()는 undefined를 반환합니다. 그것은 분명히 말한대로

+0

당신은 무엇을 의미합니까 보는가? 나는 무엇을 써야 하나? – TimurYakov

1

의 EXT 문서를 통해 이동하십시오 :

getRecord() : Ext.data.Model : 하나 loadRecord를 통해로드 된 경우 현재로드 Ext.data.Model 인스턴스를 돌려줍니다 을.

예제의 경우 loadRecord()를 사용하여 양식 패널을로드하는 코드가 표시되지 않습니다.

enter: function (button) {  
    var win = button.up('window'), 
     form = win.down('form'),    
     //record = form.getRecord(), /*not required here*/ 
     record = this.getUsersStore().findRecord('id', 1) /*if you know id or some thing which field is know*/ 

     values = form.getValues(); 
    record.set(values); 
    win.close(); 
    this.getUsersStore().sync();