Browsers implement both 302 and 303 to mean to go to the new URL including the get query string. 307 instructs the browser to repost any post data to the new URL including the get query string. Here is what I found on Windows.
IE properly and silently reposts as you would expect.
Firefox asks the user to click OK to execute the repost or CANCEL to do nothing. Doing nothing might mean that the page loads up blank, which is kind of silly.
Opera is similar to Firefox but provides a third option. Opera prompts with YES to repost, NO to use get only, and CANCEL to do nothing.
Safari treats a 307 the same as a 303 and gives no option to repost. Technical tests from the phaq blog.
The trick was that I could not use document.forms.submit() because sometimes one of the hidden elements is named submit. So I had to use an additional button that was positioned with top: -100px; in the style attribute.
Demos + Source
I was surprised to see different behavior in every browser. I don’t see the advantage of the prompt other than a possible security exploit. This is an instance where IE got it exactly to spec!