Pergunta

Estou tentando criar janelas modais em tempo real a partir do objeto JavaScript único passado pelo servidor. Mas não tenho idéia de como posso serializar em serializar a forma dentro da janela modal sem definir a variável de forma. Na maioria dos exemplos, o processo serializa, é assim:

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

No meu caso, todos os componentes internos como "formulário" são criados a partir do valor do xtype, e nenhuma variável é atribuída a ele. Existe alguma maneira de selecionar e serializar o formulário usando algo assim:

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

Ou o que é uma maneira apropriada de fazer isso?

Foi útil?

Solução

Você pode atribuir o formulário um ID e usar ext.getcmp (formid).

Para recuperar os valores de formulário de um uso de formpanel myFormPanel.getForm().getValues()

Isso voltará com um objeto JS representando os campos de forma.

Outras dicas

Escrevi uma função para tirar valores de um formulário e gerar uma string para adicionar à sequência de consultas:

/**
 * 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);
};

Talvez possa ser útil para alguém?

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top