ExtJS의 모달 창 내부에서 양식을 직렬화하는 방법은 무엇입니까?

StackOverflow https://stackoverflow.com/questions/1616275

  •  06-07-2019
  •  | 
  •  

문제

서버를 통과 한 단일 JavaScript 객체에서 모달 창을 즉석에 구축하려고합니다. 그러나 양식 변수를 정의하지 않고 모달 창 내부의 양식을 어떻게 직렬화 할 수 있는지 전혀 알 수 없습니다. 대부분의 예에서 직렬화 프로세스는 다음과 같습니다.

//create form
var CustomForm = new Ext.FormPanel({...});
//submiting form
CustomForm.getForm().submit({...});

내 경우 "Form"과 같은 모든 내부 구성 요소는 Xtype 값으로 생성되며 변수가 지정되지 않습니다. 다음과 같은 것을 사용하여 양식을 선택하고 직렬화하는 방법이 있습니까?

Ext.get(this).select('form').serialize();

아니면 적절한 방법은 무엇입니까?

도움이 되었습니까?

해결책

ID 양식을 할당하고 ext.getCMP (cormid)를 사용할 수 있습니다.

Formpanel 사용의 양식 값을 검색합니다 myFormPanel.getForm().getValues()

그것은 양식 필드를 나타내는 JS 객체와 함께 돌아올 것입니다.

다른 팁

양식에서 값을 가져 와서 쿼리 문자열에 추가 할 문자열을 생성하는 함수를 작성했습니다.

/**
 * takes an array of form values and converts them into a
 * query string
 * 
 * @param {object} Ext.form
 * @return {string} 
 */
this.serialize_form_values = function(form)
{
    var serial = '',
        values = form.getValues();

    for(var value in values)
        serial += '&' + value + '=' + values[value];

    return serial.substr(1);
};

누군가에게 유용 할 수 있습니까?

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top