Pregunta

Pregunta rápida

Si he serializado un formulario usando jQuery's .serializeArray(); función ¿Necesito hacerle algo antes de poder enviarlo usando el AJAX de jQuery? data:?

por ejemplo, ¿puedo enviar

[{name: inp1, value: 'val1'}, {name: inp2, value: 'val2'}] Como es, ¿o necesito preprocesarlo de alguna manera?

Y, en PHP, ¿cómo leería esto?

¿Fue útil?

Solución

Sería mejor aquí usar serialize. Esto convierte los valores de su forma en una cadena simple que se puede usar como la llamada de Ajax data atributo:

var myData = $('#yourForm').serialize();
// "inp1=val1&inp2=val2"
$.ajax({
    url: "http://example.com",
    data: myData
});

Suponiendo que envíe esto a PHP usando el GET Método, puede acceder a estos valores utilizando $_GET['inp1'] y $_GET['inp2']


Editar: puede convertir una matriz realizada por serializeArray en una cadena de parámetros usando $.param

var myData = $('#yourForm').serializeArray();
// remove items from myData
$.ajax({
    url: "http://example.com",
    data: $.param(myData) // "inp1=val1&inp2=val2"
});
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top