【问题标题】:Javascript redirect and Pass Argument to redirected PageJavascript重定向并将参数传递给重定向页面
【发布时间】:2011-10-14 23:52:56
【问题描述】:

我有一个包含两个按钮的主页。每个按钮都应该重定向到同一个页面,但是,您被重定向到的页面应该根据您按下的按钮执行不同的操作。如何将用户重定向到该新页面并根据您单击的按钮传递参数?

【问题讨论】:

    标签: javascript html redirect


    【解决方案1】:

    使用 JQuery 之类的工具包,跨浏览器事件处理要简单得多:

    HTML:

    <button data-param="foo">Foo</button>
    <button data-param="bar">Bar</button>
    

    JQuery 代码:

    $('button').click(function(){
        window.location = window.location.href + '?param=' + $(this).data('param');
    });
    

    演示:http://jsfiddle.net/6DK5J/

    【讨论】:

    • 我怎样才能在连接到我重定向到的第二个页面的 javascript 上获取它?说我在 page.html?p=1 中,我可以使用什么函数来获取 p?是 this.data 吗?
    • 你需要一个函数来提取 URL 参数,这里有 one here
    【解决方案2】:

    这取决于您所说的“传入参数”是什么意思,但如果您指的是 URL 查询字符串,那么您可以简单地设置一个表单,使用 GET 方法对相关页面执行操作:

    <form action="page.html" method="GET">
      <input type="submit" name="submit1" value="Submit1" />
      <input type="submit" name="submit2" value="Submit2" />
    </form>
    

    如果单击第一个按钮,重定向 URL 将为 page.html?submit1=Submit1,如果单击第二个按钮,则重定向 URL 为 page.html?submit2=Submit2

    【讨论】:

    • 即使您处于离线状态,此处的 GET 是否也可以工作,即页面应该是纯 JavaScript 并且应该离线工作?你能在javascript中添加我如何获取查询字符串吗?谢谢
    • 只要page.html存在就可以工作,不涉及服务器端操作
    • 还有一件事,我已经把按钮做成了 链接,还有可能吗?
    • 不使用该方法,不,只有来自 &lt;input&gt; 元素的值将包含在查询字符串中。您能否更改指向&lt;input&gt; 元素的链接?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-22
    • 1970-01-01
    • 2017-12-24
    • 1970-01-01
    • 2013-09-29
    相关资源
    最近更新 更多