Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript HTML&;JQuery:如何从以前的表单中检索数据_Javascript_Jquery_Html - Fatal编程技术网

Javascript HTML&;JQuery:如何从以前的表单中检索数据

Javascript HTML&;JQuery:如何从以前的表单中检索数据,javascript,jquery,html,Javascript,Jquery,Html,我正在使用JQuery和HTML创建一个应用程序。在第一个表单i中,您被要求输入一个id,然后一旦选中,您将被要求添加更多信息。我遇到的问题是,在第二页中按“提交”后,我希望将所有信息一起保存,这包括在第一页中输入的id 表单是使用HTML创建的,功能是使用JQuery完成的。我知道这可以用PHP实现,但由于我没有在这个应用程序中使用任何PHP,我想知道这是否有其他可能 我在一个.js页面中使用了这个。这是第一页中要求ID的HTML 编辑: index.html <script type=

我正在使用JQuery和HTML创建一个应用程序。在第一个表单i中,您被要求输入一个id,然后一旦选中,您将被要求添加更多信息。我遇到的问题是,在第二页中按“提交”后,我希望将所有信息一起保存,这包括在第一页中输入的id

表单是使用HTML创建的,功能是使用JQuery完成的。我知道这可以用PHP实现,但由于我没有在这个应用程序中使用任何PHP,我想知道这是否有其他可能

我在一个.js页面中使用了这个。这是第一页中要求ID的HTML

编辑:

index.html

<script type="text/javascript" charset="utf-8">
$('#RegisterForm').submit(function(){
$.cookie('cardNumberRegField', $('#cardNumberRegField').val());
});
</script>   

<form id="RegisterForm" method="post" data-ajax="false" id="registerCardForm" 
      action="register.html"> 
        <input type="text" id="cardNumberRegField" type="tel"  name="cardNumber" 
               class="required number register" minlength="16" maxlength="16"/> 
        <input name="Submit" type="submit" class="button" value="Register"/>
</form>
<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8" />
        <!--[if IE]><![endif]-->
        <title></title>
        <script type="text/javascript" src="../_/js/jquery-1.5.2.min.js"></script>
        <script type="text/javascript" src="../_/js/jquery.cookie.js"></script>
        <script type="text/javascript">
            $(document).ready(function () { 
                $('#RegisterForm').submit(function () {
                    $.cookie('cardNumberRegField', $('#cardNumberRegField').val());
                });
            });
    </script> 
    </head>
    <body>
        <form id="RegisterForm" action="register.html">  
            <input type="text" id="cardNumberRegField" value="test" />  
            <input type="submit" value="Register" /> 
        </form>
    </body>
</html>

$('#RegisterForm')。提交(函数(){
$.cookie('cardNumberRegField',$('#cardNumberRegField').val());
});
register.html

<script type="text/javascript" charset="utf-8">
$('#AccountDetailsForm').submit(function(){
var cardNumberReg = $.cookie('cardNumberRegField');
$('#tfscCardNumber').val(cardNumberReg );
});
</script>

<form id="AccountDetailsForm" method="post" data-ajax="false" id="thankyoupage" action="thankyou.html">

<input  id="tfscCardNumber" type="hidden" name="tfscCardNumber" class="readonly" minlength="2" maxlength="20" readonly="readonly" disabled="disabled"/>            
<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8" />
        <!--[if IE]><![endif]-->
        <title></title>
        <script type="text/javascript" src="../_/js/jquery-1.5.2.min.js"></script>
        <script type="text/javascript" src="../_/js/jquery.cookie.js" ></script>
        <script type="text/javascript">
            $(document).ready(function () {
                $('#tfscCardNumber').val($.cookie('cardNumberRegField'));
            });
        </script>
    </head>
    <body>
        <form id="AccountDetailsForm" action="thankyou.html"> 
            <input id="tfscCardNumber" type="text" value="undefined" /> 
        </form>
    </body>
</html>

$('#AccountDetailsForm')。提交(函数(){
var cardNumberReg=$.cookie('cardNumberRegField');
$('tfsccardname').val(cardNumberReg);
});

有人知道任何解决方案吗?

您可以通过计算机将数据从一页传递到另一页

  • 会话(通过服务器脚本按用户划分)

  • 要在第二次表单发布中保存的值需要存储在接收第二次发布的服务器上(在第一次表单发布期间),或者在第二次发布期间重新发布

    在我看来,第一篇文章,即你发布到html页面的文章,似乎没有使用服务器端技术。因此,解决方案似乎是上述两种方法中的后一种。当您不使用服务器端技术时,我会考虑捕获第一个表单提交并将值存储在Cookie中。然后在第二个页面上,您可以捕获表单帖子并从cookie中添加值

    为了做到这一点,我将使用并添加如下内容:

    编辑:index.html

    <script type="text/javascript" charset="utf-8">
    $('#RegisterForm').submit(function(){
    $.cookie('cardNumberRegField', $('#cardNumberRegField').val());
    });
    </script>   
    
    <form id="RegisterForm" method="post" data-ajax="false" id="registerCardForm" 
          action="register.html"> 
            <input type="text" id="cardNumberRegField" type="tel"  name="cardNumber" 
                   class="required number register" minlength="16" maxlength="16"/> 
            <input name="Submit" type="submit" class="button" value="Register"/>
    </form>
    
    <!DOCTYPE html>
    <html lang="en">
        <head>
            <meta charset="utf-8" />
            <!--[if IE]><![endif]-->
            <title></title>
            <script type="text/javascript" src="../_/js/jquery-1.5.2.min.js"></script>
            <script type="text/javascript" src="../_/js/jquery.cookie.js"></script>
            <script type="text/javascript">
                $(document).ready(function () { 
                    $('#RegisterForm').submit(function () {
                        $.cookie('cardNumberRegField', $('#cardNumberRegField').val());
                    });
                });
        </script> 
        </head>
        <body>
            <form id="RegisterForm" action="register.html">  
                <input type="text" id="cardNumberRegField" value="test" />  
                <input type="submit" value="Register" /> 
            </form>
        </body>
    </html>
    
    
    $(文档).ready(函数(){
    $('#RegisterForm')。提交(函数(){
    $.cookie('cardNumberRegField',$('#cardNumberRegField').val());
    });
    });
    
    编辑:register.html

    <script type="text/javascript" charset="utf-8">
    $('#AccountDetailsForm').submit(function(){
    var cardNumberReg = $.cookie('cardNumberRegField');
    $('#tfscCardNumber').val(cardNumberReg );
    });
    </script>
    
    <form id="AccountDetailsForm" method="post" data-ajax="false" id="thankyoupage" action="thankyou.html">
    
    <input  id="tfscCardNumber" type="hidden" name="tfscCardNumber" class="readonly" minlength="2" maxlength="20" readonly="readonly" disabled="disabled"/>            
    
    <!DOCTYPE html>
    <html lang="en">
        <head>
            <meta charset="utf-8" />
            <!--[if IE]><![endif]-->
            <title></title>
            <script type="text/javascript" src="../_/js/jquery-1.5.2.min.js"></script>
            <script type="text/javascript" src="../_/js/jquery.cookie.js" ></script>
            <script type="text/javascript">
                $(document).ready(function () {
                    $('#tfscCardNumber').val($.cookie('cardNumberRegField'));
                });
            </script>
        </head>
        <body>
            <form id="AccountDetailsForm" action="thankyou.html"> 
                <input id="tfscCardNumber" type="text" value="undefined" /> 
            </form>
        </body>
    </html>
    
    
    $(文档).ready(函数(){
    $('tfsccardname').val($.cookie('cardNumberRegField');
    });
    
    您可以在一个不可见的div中找到表格1中的值,然后在提交表格2时获取这些值。

    可能的@FelixKling副本今天您对副本很感兴趣:)@Rory:我对副本总是很感兴趣;)说真的,我看到的,我以前见过的大多数新问题,可能略有不同。或者可以从两个问题中得出答案。。。看到人们一遍又一遍地问同样的问题,我感到很沮丧。或者问一些真正本地化的问题。。。也许我应该休息一下:完美的回答,我支持这个!会话需要一种服务器端语言(应该提到)。只是一个注释,但有没有理由在多个页面上而不是在一个页面上这样做?可能是更好的用户体验这对我来说在一个页面上完成这一切会容易得多,但我得到了这个设计,我必须使用它,添加功能和验证,所以我必须坚持使用它:/你说的隐形div是什么意思?类似于:mydiv=document.getElementById(“mydiv”);mydiv.style.display=“无”;在html页面中为ex:编写。然后通过jquery将您的数据附加到该div中。我将这些添加到我的html页面中,看起来一切都正常运行,但是如何在.js代码中再次获取变量以保存该数字?。。。。。。。。。只是简单的var cardNo=cardNumberReg;在第二段代码中,cardNumberReg将被分配添加到cookie的值,然后将其写入一个隐藏的表单字段。您需要在第二页的html中添加隐藏表单字段,即“是的,我已经添加了隐藏输入,但是当我调试代码并检查隐藏输入的值时,它表示其中没有任何内容,它只是=”“。。。。。我编辑了我的答案,以防我的代码编辑中出现错误:用完整的解决方案更新了上面的内容,并使隐藏字段可见,以便您可以看到它正在工作。注意:在您最初发布的代码中,您有多个id等元素。每个标记只能指定一次id属性,并且应该是唯一的