ホームページ  >  記事  >  ウェブフロントエンド  >  HTMLフォームデータを介してJSONオブジェクトを送信するにはどうすればよいですか?

HTMLフォームデータを介してJSONオブジェクトを送信するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-10-19 12:01:30618ブラウズ

How to Transmit a JSON Object via HTML Form Data?

HTML フォーム データを介した JSON オブジェクトの送信

フォームを送信するとき、データは通常、個別のフォーム フィールドとして送信されます。ただし、データを JSON オブジェクトとして送信する場合は、次のメソッドを利用できます。

メソッド 1: FormData 配列シリアル化

jQuery の SerializeArray() を使用してフォーム データを配列に変換します。

var formData = JSON.stringify($("#myForm").serializeArray());

方法 2: 隠しテキスト領域

フォーム内に隠しテキスト領域を作成し、その値を JSON 文字列化されたフォーム データに設定します。このメソッドを使用すると、フォーム送信後にサーバー側のデータにアクセスできます。

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

サーバー側デコード

JSON データが通常のフォーム送信の一部として送信される場合、サーバー側でデコードする必要があります。たとえば、PHP の場合:

$data = json_decode($_POST['data']);

XHR エラー解決

コード内で、Content-Type ヘッダーを application/json に明示的に設定しないことが問題の原因である可能性があります。修正されたコードは次のようになります:

xhr.setRequestHeader('Content-Type', 'application/json');

以上がHTMLフォームデータを介してJSONオブジェクトを送信するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。