Heim > Web-Frontend > js-Tutorial > Hauptteil

Wie konvertiert man HTML5-Formdaten in JSON ohne jQuery oder Serialisierung?

DDD
Freigeben: 2024-10-30 00:50:29
Original
663 Leute haben es durchsucht

How to Convert HTML5 FormData to JSON Without jQuery or Serialization?

HTML5-Formulardaten in JSON konvertieren: Eine Schritt-für-Schritt-Anleitung

Problem:Konvertieren der Einträge von a FormData-Objekt in JSON ohne jQuery oder Serialisierung des gesamten Objekts.

Antwort:

Um die Einträge eines FormData-Objekts in JSON zu konvertieren, befolgen Sie diese Schritte:

  1. Erstellen Sie ein leeres Objekt zum Speichern der Schlüssel/Wert-Paare.
  2. Iterieren Sie das FormData-Objekt mit einer Schleife oder Methode wie forEach.
  3. Legen Sie für jeden Eintrag den Schlüssel fest im leeren Objekt auf den Namen des Eintrags und den Wert auf seinen Wert.
  4. Konvertieren Sie das Objekt mit der Methode JSON.stringify() in JSON.

Beispiel für die Verwendung von forEach :

<code class="js">var object = {};
formData.forEach(function(value, key){
    object[key] = value;
});
var json = JSON.stringify(object);</code>
Nach dem Login kopieren

Beispiel für die Verwendung von ES6-Pfeilfunktionen:

<code class="js">var object = {};
formData.forEach((value, key) => object[key] = value);
var json = JSON.stringify(object);</code>
Nach dem Login kopieren

Unterstützung für Mehrfachauswahllisten:

Wenn Ihr Formular Mehrfachauswahllisten oder andere Elemente mit mehreren Werten enthält, können Sie den folgenden Ansatz verwenden:

<code class="js">var object = {};
formData.forEach((value, key) => {
    if(!Reflect.has(object, key)){
        object[key] = value;
        return;
    }
    if(!Array.isArray(object[key])){
        object[key] = [object[key]];    
    }
    object[key].push(value);
});</code>
Nach dem Login kopieren

Formulardaten an einen Server senden:

Wenn Sie beabsichtigen, die Formulardaten an einen Server zu senden, können Sie die Konvertierung in JSON überspringen und das FormData-Objekt direkt über eine XMLHttpRequest- oder Fetch-API-Anfrage senden.

Achtung:

Die Methode JSON.stringify() unterstützt möglicherweise nicht alle Objekttypen. Wenn Ihr Objekt nicht unterstützte Typen enthält, müssen Sie möglicherweise eine benutzerdefinierte toJSON()-Methode implementieren, um die Serialisierungslogik anzugeben.

Das obige ist der detaillierte Inhalt vonWie konvertiert man HTML5-Formdaten in JSON ohne jQuery oder Serialisierung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!