Heim > Web-Frontend > js-Tutorial > Hauptteil

Wie übertrage ich ein JSON-Objekt über HTML-Formulardaten?

Susan Sarandon
Freigeben: 2024-10-19 12:01:30
Original
701 Leute haben es durchsucht

How to Transmit a JSON Object via HTML Form Data?

Übertragen eines JSON-Objekts über HTML-Formulardaten

Beim Absenden eines Formulars werden die Daten normalerweise als einzelne Formularfelder gesendet. Wenn Sie jedoch Daten als JSON-Objekt senden möchten, können Sie die folgenden Methoden verwenden:

Methode 1: FormData-Array-Serialisierung

Konvertieren Sie die Formulardaten mit serializeArray() von jQuery in ein Array Methode und stringifizieren Sie sie dann in JSON.

var formData = JSON.stringify($("#myForm").serializeArray());
Nach dem Login kopieren

Methode 2: Versteckter Textbereich

Erstellen Sie einen versteckten Textbereich innerhalb des Formulars und legen Sie seinen Wert auf die JSON-stringifizierten Formulardaten fest. Mit dieser Methode können Sie nach der Formularübermittlung serverseitig auf die Daten zugreifen.

<input type="hidden" name="data" value="{&quot;first_name&quot;:&quot;binchen&quot;,&quot;last_name&quot;:&quot;heris&quot;}">
Nach dem Login kopieren

Serverseitige Dekodierung

Wenn die JSON-Daten im Rahmen einer regulären Formularübermittlung übertragen werden, ist dies der Fall muss auf der Serverseite dekodiert werden. Zum Beispiel in PHP:

$data = json_decode($_POST['data']);
Nach dem Login kopieren

XHR-Fehlerauflösung

In Ihrem Code liegt das Problem möglicherweise darin, dass Sie den Content-Type-Header nicht explizit auf application/json gesetzt haben. Der korrigierte Code sollte sein:

xhr.setRequestHeader('Content-Type', 'application/json');
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie übertrage ich ein JSON-Objekt über HTML-Formulardaten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage