0

2 つのフォームを含む PHP ファイルがあります。1 つのテキスト ボックスと 3 つのドロップダウン リストをフィルターとして持つ Form1 (中間)。Form1 で送信ボタンを押すと、計算のために値が別の PHP ファイルに POST され、Form2(ProductionForm) が表示されます (これまでのところ非表示になっています)。

私はこれをjQueryで行いました。コードスニペットは次のとおりです。

  <script type="text/javascript">
$(document).ready(function(){
    $("#intermediate").submit(function() {
    /* AJAX calls and insertion into #productionForm */

        $.post("../c/ProductionSummaryFormCalculation.php", {
        Date: $('#datepicker').val(),
        ShiftId: $('#selectShift :selected').val(),
        Machine: $('#selectMachine :selected').val(),
        User: $('#selectUser :selected').val(),
    });

        $("#datepicker").prop("disabled", true);
        $("#selectShift").prop("disabled", true);
        $("#selectMachine").prop("disabled", true);
        $("#selectUser").prop("disabled", true);
    $("#productionForm").show();
        return false;
    });
});

ProductionSummaryFormCalculation.php ファイルから値を計算し、Form2 のテキスト ボックスにロードします。

次のコードで使用すると、機能しません。

    <input id="start_time_text" class="start_time_text" type="text" name="start_time_text" value="<?php echo $start_time; ?>">

また、Form2 で送信ボタンを押したときに、Form1 と Form2 の両方から選択した値を POST メソッドを介して別の PHP ファイルに送信したいと考えています。

    $("#productionForm").submit(function() {
    /* AJAX calls and insertion into #productionForm */
        $.post("../c/ProductionSummaryForm2.php", {
        start_time: $('#start_time_text').val(),
        end_time: $('#end_time_text').val(),
        remarks: $('#Remarks').val()
    });
});

どうすればこれを達成できますか; 誰かが私を助けることができますか?

4

1 に答える 1

0

$.post を実行すると、送信が成功したときに実行される関数を配置することもできます。 http://api.jquery.com/jQuery.post/
最初のフォームを送信した後、php ファイルを取得して必要なものを返し、目的のテキストエリアに追加します。

これが単純な 2 ステップのフォームの場合、最初のフォームをファイルに送信して結果を返す必要はありません。両方の div を含む 1 つのフォームを作成するだけで、最初の送信時に 1 つの div を非表示にして他の div を表示し、両方を一緒に送信します。

于 2012-12-18T23:34:57.677 に答える