Redirect Parent Window from an Iframe Action
What Javascript Do I Need to Use to Redirect a Parent Window from an Iframe? I Want Them to Click a Hyperlink Which, Using Javascript or Any Other Method...
What JavaScript do I need to use to redirect a parent window from an iframe?
I want them to click a hyperlink which, using JavaScript or any other method, would redirect the parent window to a new URL.
14 Answers
window.top.location.href = "";
Will redirect the top most parent Iframe.
window.parent.location.href = "";
Will redirect the parent iframe.
I found that <a href="..." target="_top">link</a> works too
window.top.location.href = "";
window.top refers to the window object of the page at the top of the frames hierarchy.
target="_parent" worked great for me. easy and hassle free!
or an alternative is the following (using document object)
parent.document.location.href = "";
@MIP is right, but with newer versions of Safari, you will need to add sandbox attribute(HTML5) to give redirect access to the iFrame. There are a few specific values that can be added with a space between them.
Reference(you will need to scroll):
Ex:
<iframe sandbox="allow-top-navigation" src=""></iframe>
This will solve the misery.
<script>parent.location='
If you'd like to redirect to another domain without the user having to do anything you can use a link with the property:
target="_parent"
as said previously, and then use:
document.getElementById('link').click();
to have it automatically redirect.
Example:
<!DOCTYPE HTML>
<html>
<head>
</head>
<body>
<a id="link" target="_parent" href="outsideDomain.html"></a>
<script type="text/javascript">
document.getElementById('link').click();
</script>
</body>
</html>
Note: The javascript click() command must come after you declare the link.
It is possible to redirect from an iframe, but not to get information from the parent.
For current page - window.location.href = "Your url here";
For Parent page - window.top.location.href = "Your url here";
From HTML
<a href="" target="_top">link</a>
Try using
window.parent.window.location.href = '
window.top.location.href = 'index.html';
This will redirect the main window to the index page. Thanks
We have to use window.top.location.href to redirect parent window from an iframe action.
Demo url :
Redirect iframe in parent window by iframe in the same parent:
window.parent.document.getElementById("content").src = "content.aspx?id=12";