2010-09-08 173 views
20

我正在使用ajax加载我的网站内容,并且希望在ajax成功时更新窗口位置。更改窗口位置jquery

如何将窗口位置更新为“/ newpage”?我需要用户能够返回并刷新。这可能吗??

回答

6

您可以为此设置document.location.href的值。它指向当前的URL。 jQuery不需要这样做。

+0

我不想重定向他们。只需更改网址即可。 – user342391 2010-09-08 15:01:10

+0

如果更改网址,您将强制浏览器尝试请求该URL服务器端。你不能只改变URL的精神。如果你使用它,最好的办法就是改变url的'#hash'部分。 – MooGoo 2010-09-08 15:06:37

+8

@user - 你不能改变URL(除了哈希)*没有*重定向他们,这将是一个巨大的安全问题,如果你可以:) – 2010-09-08 15:06:54

43

我通过将重定向的成功像这样假设你正在使用jQuery作出AJAX调用,这样就可以做到这一点很容易地:

$.ajax({ 
     url: 'ajax_location.html', 
     success: function(data) { 
      //this is the redirect 
      document.location.href='/newpage/'; 
     } 
    }); 
3

假设你想在同一域中的网址更改为另一种,您可以使用此:

history.pushState('data', '', 'http://www.yourcurrentdomain.com/new/path'); 
0

我写了变更窗口共同的功能

这个代码可以并行地使用所有类型的项目

function changewindow(url,userdata){ 
    $.ajax({ 
     type: "POST", 
     url: url, 
     data: userdata, 
     dataType: "html", 
     success: function(html){     
      $("#bodycontent").html(html); 
     }, 
     error: function(html){ 
      alert(html); 
     } 
    }); 
}