代码之家  ›  专栏  ›  技术社区  ›  Niyaz

无服务器代码的HTML数据处理(仅使用javascript)

  •  0
  • Niyaz  · 技术社区  · 16 年前

    我只是想知道是否有办法做到这一点:

    我在网页中有一个表单,用户提交表单后,该页面将重定向到另一个静态HTML页面。

    在没有任何服务器代码的帮助下,是否有任何方法可以操作第二个HTML页面中的数据?

    我的意思是,我可以显示用户在第二页中提交的表单数据吗?

    当然,应该有一个导航,而不是一些Ajax代码来加载第二个页面(使用它可以很容易地操纵数据)。

    4 回复  |  直到 16 年前
        1
  •  2
  •   Ates Goral    16 年前

    你可以使用 <form> 使用get方法转到另一个带有一些查询参数的静态HTML页面,然后使用javascript获取这些参数:

    第一页:

    <form method="GET" action="page2.html">
        <input type="text" name="value1"/>
        <input type="text" name="value2"/>
        <input type="submit"/>
    </form>
    

    第二页:

    <script type="text/javascript">
    function getParams() {
        function decode(s) {
            return decodeURIComponent(s).split(/\+/).join(" ");
        }
    
        var params = {};
    
        document.location.search.replace(
            /\??(?:([^=]+)=([^&]*)&?)/g,
            function () {
                params[decode(arguments[1])] = decode(arguments[2]);
            });
    
        return params;
    }
    
    var params = getParams();
    
    alert("value1=" + params.value1);
    alert("value2=" + params.value2);
    // or massage the DOM with these values
    </script>
    
        2
  •  1
  •   Thilo    16 年前

    您可以访问页面从javascript获取参数( window.location.search窗口.location.search ,您仍然需要解析它),并使用它将一些可验证文件传递到静态页。

    (我想没有办法发布内容。)

    您还可以从javascript中读取和设置cookie的值。

    如果您在一个“父”页始终围绕的框架集中,那么您也可能在其中存储信息(另外,跨框架脚本编写很复杂,我会尽量避免这种情况)。

        3
  •  0
  •   Shawn Miller    16 年前

    如果您有第一页,请提交带有get操作的表单,您将得到一个如下所示的URL:

    http://tempuri.org/Page2.html?param1=value1&param2=value2
    

    然后可以使用page2.html上的javascript读取查询字符串参数并将其显示在页面上。

        4
  •  0
  •   Tiago    16 年前

    如果您通过GET发送表单,是的,您可以从JS获取该信息。

    有一个jquery插件可以做到这一点,但是如果你愿意,你可以自己滚动,这并不复杂。

    只需获取location.href并使用“?”将其拆分即可。

    然后,使用“&”再次拆分

    现在,对于每个值,用“=”拆分。然后您将得到一个具有查询名称和值的数组。

    编辑:谷歌 javascript get querystring 找到几十个实现。