【问题标题】:Transfer values of one form to another form on the next webpage将一个表单的值转移到下一个网页上的另一个表单
【发布时间】:2016-08-17 06:16:44
【问题描述】:

我正在制作一个预订网站,其中前两个页面的表格几乎相同。具有相同表单的要点是,如果用户想要一些不同的结果,可以再次搜索 那么如何将第一页上的表单输入转移到下一页上的另一个表单? 我确实尝试了 location.search 但这给了我一些复杂的输入。 就像我在第一页上选择了 18 作为我的年龄一样,它应该在另一页上进行。 注意:我在不同的网页上有这两种形式的输入类型的相似 id,因为我必须继承一些对象。

【问题讨论】:

    标签: javascript forms dom get webpage


    【解决方案1】:

    我相信仅使用 javascript 将数据从一个页面传输到另一个页面的最直接和最简单的方法是让您的表单具有 GET 的方法。然后,您可以从页面的 url 读取 GET 数据,并随心所欲地显示/使用数据。

    这是一个sn-p。

    第 1 页 (page1.html)

    <html>
      <head>
        <title>Page 1</title>
      </head>
      <body>
        <form action="page2.html" method="GET">
          <input type="text" name="name" />
          <input type="submit" />
        </form>
      </body>
    </html>
    

    第 2 页 (page2.html)

    <html>
      <head>
        <title>Page 2</title>
      </head>
      <body>
        <span id="data"></span>
        <script type="text/javascript">
          function getParameterByName(name, url) {
            if (!url) url = window.location.href;
            name = name.replace(/[\[\]]/g, "\\$&");
            var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"),
                results = regex.exec(url);
            if (!results) return null;
            if (!results[2]) return '';
            return decodeURIComponent(results[2].replace(/\+/g, " "));
          }
          document.getElementById("data").innerHTML=getParameterByName('name');
        </script>
      </body>
    </html>
    

    附:我从here得到了getParameterByName函数

    【讨论】:

    • 嘿,我不了解 jquery,所以这超出了我的想象 var regex = new RegExp("[?&]" + name + "(=([^]* )|&|#|$)"),有一种与对象相关的方法,我不知道。
    • 我根本没用过jQuery。仅供参考,如果您看到类似于 $('blah')jQuery('blah') 的代码,您就知道它很可能是 jQuery。为了回答您的问题(这可能只会让您更加困惑),这看起来像是一个正则表达式,它考虑到可能有多个参数和一个可能的锚点,正在拆分 url。
    猜你喜欢
    • 1970-01-01
    • 2013-08-18
    • 1970-01-01
    • 2018-02-26
    • 1970-01-01
    • 2010-12-06
    • 1970-01-01
    相关资源
    最近更新 更多