Pregunta

Por defecto, un FormPanel en ExtJS 3.1.0 Mensajes de los campos de formulario como application/x-www-form-urlencoded cuando se llama a su submit () función.

¿Hay alguna manera de conseguirlo para enviar JSON en lugar?

¿Fue útil?

Solución

Se puede utilizar getValues() para tirar de los valores y luego Ext.encode() ellos y hacer manualmente una Ext.Ajax.request({}) con estos datos también.

Otros consejos

Es posible que desee extender Ext.form.Action.Submit para codificar los parametros como JSON en lugar de codificación URL en el cuerpo.

Puede anular Ext.form.Action.Submit.run.

Al igual que este:

Ext.override(Ext.form.Action.Submit, {
    run: function() {
        // Your code here
    }
});

Sólo hay que poner en params

var formData = App.formPanel.getValues(false);
Ext.net.DirectMethod.request({ 
     url: '/Product/Save',
     params: formData,
     success: function(jsonResult){
     }
});

o

App.formPanel.submit();

Antes de una serie App.formPanel.url = '/Product/Save'

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top