dedlfix: Formular Serializer native JS

Beitrag lesen

problematische Seite

Tach!

function encode (form) {
  return new URLSearchParams(new FormData(form)).toString()
}

Das liefert leider nicht den gewünschten Enctype.

Nun, eine Lösung die funktioniert habe ich hier mal festgehalten (mit Demo).

// multipart/form-data
var fdata = new FormData(form);
var q = new URLSearchParams();
for (const [key, val]  of fdata.entries()) {
    q.append( key, val );
}
// application/x-www-form-urlencoded
xhr.send( q.toString() );

Wenn die obige nicht richtig sein soll, die untere aber schon, wo ist da jetzt der Unterschied, außer dass du unnötigerweise die Daten mit For-Schleife an URLSearchParams übergibst, statt dem Konstruktor die Arbeit zu überlassen?

dedlfix.