不在window.open中打开url

时间:2012-09-26 13:46:27

标签: javascript window.open

我在页面中有一个链接。点击链接弹出窗口应该使用必需的url呈现。我有window.open代码如下

<a href="javascript:;" onclick="window.open('/action.do?name=aravind&age=19&url=http://astrik.com/click?id=613*B&offerValue=2.9','chatWindow','menubar=1, scrollbars=yes, resizable=yes, width=600,height=450');return false;">Click here</a>

点击上面的链接,弹出窗口打开,网址为http://astrik.com/click?id=613 * B,并且offerValue没有显示在弹出的网址中。我需要在网址中显示offerValue。任何不显示的原因offerValue。

3 个答案:

答案 0 :(得分:0)

尝试以下方法:

<a href="javascript:;" onclick="window.open('/action.do?name=aravind&age=19&url=http://astrik.com/click?id=613*B%26offerValue=2.9','chatWindow','menubar=1, scrollbars=yes, resizable=yes, width=600,height=450');return false;">Click here</a>

您必须URL encode参数为“url”值,否则它们会附加到原始网址。

答案 1 :(得分:0)

在使用之前,您应该在url中转义数据部分。在这种情况下,数据部分url被url中的&符号(&amp;)窃听。

var url = encodeURIComponent('http://astrik.com/click?id=613*B&offerValue=2.9');


<a href="javascript:void(0);" onclick="window.open('/action.do?name=aravind&age=19&url=' + url,'chatWindow','menubar=1, scrollbars=yes, resizable=yes, width=600,height=450');return false;">Click here</a>

(或者只是替换&符号,现在不确定)

答案 2 :(得分:0)

提供的网址包含?表示参数列表的开头。每个参数由&分隔。因此,对于解析器,提供的参数列表如下所示:

name=aravindage=19url=http://astrik.com/click?id=613*BofferValue=2.9。它们都属于/action.do的请求。

您需要使用其转义码%26来转义最后一个放大器,如下所示:

/action.do?name=aravind&age=19&url=http://astrik.com/click?id=613*B%26offerValue=2.9

将最后一个参数“绑定”到astrik URL。也许它还需要逃脱第二次?与%3F

相关问题