代码之家  ›  专栏  ›  技术社区  ›  EMP

JavaScript以获取请求的形式重新加载页面

  •  14
  • EMP  · 技术社区  · 15 年前

    我有一个看似简单的问题,但找不到答案。我有一个网页,它可能是一个POST请求的结果,并且可能在URL中有一个锚(#)。我想重新加载这个页面 作为GET请求 在JavaScript中。所以这和 this question

    因此,例如,如果该页面是由对“”的POST请求生成的 http://server/do/some?thing# “我想重新加载URL” http://server/do/some?thing “当然,如果我尝试的话

    window.location.reload(true);
    

    这导致IE尝试一个帖子。如果我这样做:

    window.location = window.location.href;
    

    当URL有锚点时,这不会起任何作用。我真的需要自己做字符串操作来摆脱“#whatever”吗?还是有更简单、更好的方法?

    3 回复  |  直到 7 年前
        1
  •  19
  •   EMP    15 年前

    到目前为止,我想到的最好的方法是:

    function reloadAsGet()
    {
        var loc = window.location;
        window.location = loc.protocol + '//' + loc.host + loc.pathname + loc.search;
    }
    
        2
  •  8
  •   Alex Salauyou    9 年前

    请尝试以下操作:

    location.replace(location.href)
    
        3
  •  1
  •   Sarath Ak    7 年前

    location=location.href