Issue a redirect (HTTP 302) to act on _top frame without using Java script
I need to redirect the top frame on a form post and it should work irrespective of javascript and across all major browsers.
I can redirect to a page with a link and its target attribute set & and asking the 开发者_如何学编程users to click the link.
But would like to know whether I can do it in a 302 Response itself.
No. A 302 (or 301, or 303) response only specifies that the browser has to look elsewhere for the requested document (as specified by the Location
header). The concept of browser frames is completely outside the scope of HTTP.
However, browser frames are defined in HTML, and so is the target
property on form
elements:
<form action="/somescript?x=y" method="POST" target="_top">
This will make the form submit to the _top frame, which means "use the full browser window". This is supported across all modern (and most older, e.g. IE4) browsers and does not require JavaScript.
精彩评论