jQuery: inviare un form come JSON

Short link

Con jQuery possiamo inviare i dati di un form come JSON.

La soluzione รจ la seguente:


$( "#form" ).on( "submit", function( e ) {
  e.preventDefault();  
  var $form = $( this );
  
  var options = {
    method: "POST",
    url: "/api/post",
    contentType: "application/json", // In invio
    dataType: "json", // In ricezione
    data: JSON.stringify( $form.serializeArray() ), // Array dei campi del form
    processData: false // Impedisce ulteriori elaborazioni ai dati in invio
  };
  
  $.when( $.ajax( options ) ).done(function( response ) {
        //...
  });
});

L'autore

Gabriele Romanato, sviluppatore web full stack specializzato in siti, applicativi web ed e-commerce con Node.js e PHP.