如何将URL参数传递给iframe?

6
假设我有以下的网页。
www.fake.com/sample.html

我可以将一些参数传递给该网页,例如:
www.fake.com/sample.html?count=10&format=gold

这个页面中包含一个 iframe,在嵌套的 iframe 中我想要传递主页面获取到的任何参数。如果主页面像下面这样被调用:

www.fake.com/sample.html?count=10&format=gold

示例页面中的 iframe 应该使用相同的参数进行调用。
<iframe src="www.fake.com/framed_page.html?count=10&format=gold"></iframe>

什么是最简单的方法来实现这个?

你的斜杠方向不对。FYI - Adam Hopkinson
修复了斜杠。另外,我没有访问服务器端语言的权限。 - Janak
2个回答

5
在子文档(framed_page.html)的JavaScript中,您可以调用window.parent.location来获取sample.html的位置对象。调用window.parent.location.search可获取查询字符串。

我的最爱是@JustinJohnson的答案。https://dev59.com/OXRB5IYBdhLWcg3wxZxK - zipzit

3

最简单可靠的方法(因为它不需要JavaScript工作)是使用服务器端语言从QUERY_STRING服务器变量组合正确的iframe URL。

在PHP中:

<iframe src=
    "www.fake.com\framed_page.html?<?php echo $_SERVER["QUERY_STRING"]; ?>">
</iframe>

这正是我打算采用的方案,但是 OP 没有提到 PHP。 - Adam Hopkinson
然而,问题确实要求在iframe src属性中提供查询字符串,而不是在iframe dom中提供。 - Adam Hopkinson
@adam 是的,它需要放入“load”事件中才能与JS一起使用 - 完全没问题,但显然在禁用JS时无法工作,这是唯一的缺点。这将取决于OP可以使用什么。 - Pekka

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接