0

複数ページのフォームがあり、フォームからすべてのデータを取得する必要があります。これを手動で実行できることはわかっていますが、より動的なアプローチが必要です。ええ、可能であれば、javascript のみを使用して回答をお願いします。

編集...多少曖昧でしたら申し訳ありません。私がやりたいことは、ユーザーが入力したすべてのデータをユーザーに提示することなので、これはサーバー側ではなくクライアント側だと思います。また、PHPをインストールしました。だから、PHPのやり方があれば、それもOKです。

ユーザーがすべてのデータを 1 ページだけに入力すると非常に長くなるため、ユーザーはさまざまな Web ページからジャンプするため、マルチページになっています。うーん... 例として、納税申告書があります。またはある種の国勢調査。それが、フォームの長さと、取得する必要があるデータの量です。だから、私はそれを行う動的な方法を知りたいです。

私はまだ終わっていません。以下のコメントに感謝します。私はそれらを試しましたが、いくつかは有益です。

4

3 に答える 3

1

わかりました、私は私の問題を解決したと思います。これが私がやった方法です。

まず、複数のページを使用する代わりに、非表示のdivを使用して、ユーザーが次のページをクリックして現在のフォームを非表示にしたときに表示されるようにしました。

次に、このコードを使用してすべてのデータにアクセスできることを学びまし
var value = document.forms[formname].elements[index].value;
た。ループ内に配置します。

そして、それをすべて次のように処理します。

<?php 
if (!empty($_POST['form1'])) {
    //do some sever-side processing and validation;
}

if (!empty($_POST['form2'])) {
    //do some sever-side processing and validation;
}

.....
?>

ところですべての助けをありがとう。

于 2012-01-21T17:29:44.843 に答える
1

これを試して

$.post("destination_site.php", $("form").serialize());

実行されたページのすべての「フォーム」タグを選択し、シリアル化されたデータを「destination_site.php」にポストします。

スクリプト サイトでは、次の方法でアクセスできます。$_POST['name_of_input_element']

クライアント サイトの入力要素にアクセスする場合は、投稿する必要はありません。これを使用して、サイトのすべてのフォームのすべての入力要素にアクセスします

$.each("form :input", function(index, value) { 
  // show message box of input value
  alert($(this).val());
});
于 2012-01-20T10:24:27.710 に答える
0

jquery のシリアル化を使用すると、フォームからすべてのフィールドを取得し、それをajaxを使用して php スクリプトに送信できます。

于 2012-01-20T09:59:38.150 に答える