JavaScript для перезагрузки страницы в качестве запроса GET

у меня казалось бы простой вопрос, но не могу найти ответ. У меня есть веб-страница, которая может быть результатом запроса POST и может иметь якорь (#) в URL-адресе. Я хочу перезагрузить эту страницу как запрос GET в JavaScript. Так что это похоже на этот вопрос, но я действительно хочу избежать сообщения, а не только предупреждения об этом.

Так, например, если страница появилась в результате запроса POST на "http://server/do/some?вещь#" Я хотите перезагрузить URL"http://server/do/some?вещь" как сделать. Если я попытаюсь

window.location.reload(true);

это заставляет IE попробовать сообщение. Если я вместо этого сделаю:

window.location = window.location.href;

это ничего не делает, когда URL имеет якорь. Мне действительно нужно делать манипуляции со строками, чтобы избавиться от" #whatever "или есть более простой," лучший " способ сделать это?

3 ответов


лучшее, что я придумал до сих пор:

function reloadAsGet()
{
    var loc = window.location;
    window.location = loc.protocol + '//' + loc.host + loc.pathname + loc.search;
}

попробуйте следующее:

location.replace(location.href)

вы можете попробовать это

location=location.href