不打开新窗口时的Window.opener替代方案

时间:2010-10-20 09:50:06

标签: javascript browser

小概率我正在使用以下代码行

customerName = window.opener.form2.custName.value;

问题是我不再在新窗口中打开页面,我在同一个窗口中打开它,从而替换旧页面。

我是否还能获得相同的信息?

由于

3 个答案:

答案 0 :(得分:1)

将它作为查询字符串中的paratemer传递给新页面。

如果您打开新页面,例如:<a href="newPage.html">...,请将详细信息传递为<a href="newPage.html?custName="+document.form2.custName.value>

作为替代方案,您可以使用cookie存储第1页的数据,然后再导航并在第2页中检索它。

答案 1 :(得分:1)

如果您没有打开新窗口,则window.opener将不可用。

您可以尝试在查询字符串上传递custName的值,例如http://example.com/somepage.htm?custName= <yourValueHere>

在javascript中相对容易获取查询字符串值,例如尝试使用http://plugins.jquery.com/project/query-object

否则,设置一个cookie并在第二页上检索它的值。

答案 2 :(得分:0)

您需要以某种方式将所需的值/值传递到新页面。一些指示:

  • 使用cookie将值存储在一个页面中,然后在下一个页面中检索它。
  • 将其作为URL中的参数传递,或者将表单提交到新页面。
  • 将其存储在会话中,然后将其检索。

当然,您可能还希望考虑数据的性质。如果它是敏感的,您应该使用会话或表单替代方案来确保无法从外部查看信息(例如,在cookie中或在浏览器的URL中)。