0

多くのフォームを動的に生成するものを作成し、jquery を使用して送信を処理することを考えました。

だから私はこのようなものを使ってphpを使ってフォームを生成します。

while(some condition) {
    echo "<form method=post action=specific_url.php name=some_form_name>";
    echo "<input type=text>";
    echo "<input type=submit>";
    echo "</form>";
}

さて、上記は単なるスケルトンです。主な問題は、送信中に各フォームを一意に識別して送信し、specific_url ページで問題なくデータを抽出できるように、フォーム要素に名前を付ける/id を付ける方法です。

頭のてっぺんに思いつくこの機能の直接的な例えは、各投稿にコメント ボックスがある Facebook の投稿です。

アップデート

私は質問にあまり明確ではなかったと思います。申し訳ありません。言い換えさせてください。

だから今まで、私はこれらの動的に生成されたフォームを持っています。ここで、ユーザーがテキストボックスの 1 つに書き込み、送信ボタンをクリックしたとします。

これらの時点で、jquery がそれを制御する必要があります。その特定のフォーム データを URL に送信します。結果を取得し、何かを実行します。

結局、私はこのようなことができるはずです

$(some_selector).submit(function(e) {
    e.preventDefault();
    $.post('specific_url.php',$(some_selector).serialize(),function(data) {
        // some stuff
    });
});

ここでの「some_selector」は、特定のフォームが送信されたときにアクティブになり、そのフォームのデータを送信するセレクターです。

4

2 に答える 2

0

非表示のフォーム要素を使用して、その値をフォームの ID に設定できます。

<input type="hidden" name="form_id" value="1">

このようにして、フォームを送信すると、他のフォーム値と同じように form_id にアクセスできます。Facebook のソースを見ていると、コメント ボックスの横にいくつかの非表示のフォーム要素が表示されます。

于 2013-11-10T17:58:38.283 に答える