jQuery: serializzare un form come oggetto JSON

jQuery: serializzare un form come oggetto JSON

Possiamo serializzare un form come oggetto JSON con jQuery.

La soluzione รจ la seguente:


(function( $ ) {
  if( !$.toJSON ) {
      $.toJSON = function( element ) {
          var query = element.serialize(),
              parts = query.split( "&" ),
              obj = {};

              parts.forEach(function( part ) {
                  var frags = part.split( "=" );
                  obj[frags[0]] = frags[1];
              });

              return obj;
      };
  }
})( jQuery );

Esempio d'uso:


$( "#form" ).on( "submit", function( e ) {
    e.preventDefault();
    var $form = $( this );
    var data = $.toJSON( $form );
    //...
});

Torna su