将查询字符串传递给IE7中的JS window.open不起作用?

时间:2009-10-16 18:25:43

标签: php javascript jquery internet-explorer-7

我可以通过Firefox中的地址栏运行以下内容:

javascript:window.open("http://my.hostname.com/test.php?id=12345", "exportWindow");

当我print_r($ _ GET)时,我看到$ _GET数组,其中包含我在URL中指定的值。但是当我在IE7中这样做时,它只是在屏幕上打印“null”。

修改

原来这是由于弹出窗口阻止程序造成的。但是,使用剪切的实际代码不起作用 - 在print_r-ing时我在IE中得到Array():

  $Page->addJQuery('$("#pageForm div.export").click(function() { ' . $jQueryVars . 'window.open("' . $this->getUrl() . '"' . $jQueryParams . ', "exportWindow"); return false; });');

3 个答案:

答案 0 :(得分:1)

IE阻止弹出窗口。您看到的'null'是JavaScript调用的返回值。关闭弹出窗口拦截器,它应该可以工作。

答案 1 :(得分:0)

事实证明,对于某些原因,我需要使用.live(“click”,function()而不是.click(function()。不知道为什么,因为我在IE中使用的其他几个地方使用.change。但是它解决了这个问题。

答案 2 :(得分:0)

原来我需要使用jQuery的.live而不是.click。