多步骤表单检索从步骤 1 到步骤 2 的数据


multi step form retrieve data from step 1 to step2

Beginner in jquery ajax.我想检索数据(这部分工作已经完成并且正常)并将它们从我的表单的步骤 1 传递到步骤 2。

目前的代码是:我试图用 #step2 #check-ok 显示阶段 1 显示 none 和阶段 2 出现但不工作后我想要数据的位置:我的数据保持在步骤 1 上。

   $(".open1").click(function() {
      if (v.form()) {
        var data = {
        'civility'   : jQuery("input[name=civility]:checked", "#to-bc-clt").val(),
        'society'    : jQuery('#society').val(),
        'firstName'  : jQuery('#firstName').val(),
        'lastName'   : jQuery('#lastName').val(),
        'email'      : jQuery('#email').val(),
        };
    jQuery.ajax({
    url : '/mySite/VerifRep/parsers/check.php',
    method : 'POST',
    type    : 'POST',
    data : data,

    success : function(data){
      if (data != 'passed') {
        jQuery('#messages-errors').html(data);
        }  
      if (data == 'passed') {
        $(".frm").hide("fast");
        $("#step2").show("slow");
        $(".open1").css("display","none");
        $(".open2").css("display","inline-block");
         $("#step 2 #check-ok").val(data);
         // Try that way too but not work --> $("#check-ok").html(data);
        }
    },
    error : function(){
        alert('Something wrong.'); }
        });
      }
    });

您可以使用 JSON 在本地存储详细信息,类似于 php 会话我也有同样的问题我有多个步骤表格,想要步骤1的详细信息(成员的计划选择),并在功能中使用它们并计算结果并将其显示在要付款的第3步中(成本该成员选择的计划)

表单应该有方法POST(如果你使用GET,用GET替换php文件中的POST)

第一步,使用类似 JSON 的 JSON

var x = document.getElementByName(name_of_textbox_which_has_name);
var y = document.getElementByName(name_of_textbox_which_has_age);
var z = document.getElementByName(name_of_textbox_which_has_city);
var val = {name: x, age: y, city: z};
var toBeSent = JSON.stringify(val);
window.location = "phpfilename.php?xyzvar=" + toBeSent;

将其放入函数中,并在用户单击"下一步"按钮时调用它......

现在,在进入第二步之前...在 php 文件中 ( php文件名.php )请记住变量名称是"xyzvar"

<?php
$name=$_POST['xyzvar'];
$data=json_decode($name);
echo $data->name //  prints x ( name entered in textbox )
echo $data->age //  prints y ( age entered in textbox )
echo $data->city //  prints z ( city entered in textbox )
// instead of echo you can use it anywhere for further coding
?>