9

私は最近、部分的に回答された質問をしましたが、誰かがこれをもう少し明確に説明できることを望んでいました. そのPHPとserialize関数について。

したがって、12 個のフィールドを持つフォームがあり、すべてに名前が付いています。従来は、POST メソッドを使用して PHP ページに送信し、データベースに提供していました。

今日、serialize メソッドに出くわしましたが、それを使用した後、通常の POST ステートメントが行うことは何もしないようです。たとえば、シリアル化を使用する場合は、次のようにします。

var formData = $('#contForm').serialize();
$.post('functs.php',formData,dispAdd);

次に、使用する値を出力します

echo $_POST['value_name']

私が見ているのは、シリアル化の有無にかかわらず、同じ結果が得られるということです。ここで何か不足していますか?

4

1 に答える 1

4

.serialize() メソッドは、標準の URL エンコード表記でテキスト文字列を作成します。一連のフォーム要素を表す jQuery オブジェクトで動作します。フォーム要素にはいくつかのタイプがあります。続きを読む.

.serialize()AJAX リクエストを介してデータを送信するときに使用されます。送信ボタンを使用してフォームを送信するのと同じです。ページを更新しないAJAXを使用する場合のみ違います。そのため、送信ボタンを使用してフォームを送信したり.serialize()、AJAX を使用したりしても、同じ結果が得られます。

.serializeArray()は の代わりになり.serialize()ます。

使用しない場合は.serialize()、上記のコメントで @Akam が述べたように、キーと値のペアを手動で作成する必要があることに注意してください。

そして最後に

どのような場合にシリアライズを使用するか <-- AJAX を使用してデータを投稿する場合

通常の POST の場合 <-- 送信ボタンを使用してデータを投稿する場合

于 2013-03-12T05:27:21.097 に答える