views:

79

answers:

2

Lets say I have the following webpage

www.fake.com/sample.html

I could pass some parameters to that webpage, like so

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

this page has an iframe in it, I would like to pass any parameters that the main page gets to the enclosed iframe. If the main page is called like so

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

the iframe in the sample page should be called with those same paramters.

<iframe src="www.fake.com/framed_page.html?count=10&format=gold"></iframe>

What is the easiest way to do this?

+1  A: 

In the javascript of the child document (framed_page.html) you can call window.parent.location to get the location object of sample.html. Call window.parent.location.search to get the query string

adam
+1, didn't know `location.search`. Nice.
Pekka
+1  A: 

The easiest and most reliable way (because it doesn't require JavaScript to work) would be to use a server-side language to compose the correct iframe URL from the QUERY_STRING server variable.

In PHP:

<iframe src=
    "www.fake.com\framed_page.html?<?php echo $_SERVER["QUERY_STRING"]; ?>">
</iframe>
Pekka
That's what I was going to go with, but there's no mention of php in the OP.
adam
Then again, the question does ask for the query string in the iframe src attribute rather than in the iframe dom.
adam
@adam yeah, it would need to be put into the `load` event to work with JS - perfectly fine but won't work with JS disabled obviously, which is the only downside. It will depend on what the OP can use.
Pekka