使用AJAX加载内容取决于URL,反之亦然

时间:2011-03-04 19:59:59

标签: jquery ajax url asp.net-mvc-3

在MVC 3项目中,我有一个返回View的Controller动作。我们称之为“个人资料”。

此个人资料视图上有3个标签。每个选项卡的内容都使用来自3个不同控制器的jQuery AJAX加载。假设有3个标签名为

联系,兴趣和游戏

我想要做的是,当用户在浏览器的URL框中键入以下内容时:

  

www.mywebsite.com/profile/contact

它应该打开显示配置文件视图并显示联系人选项卡。如果用户输入

  

www.mywebsite.com/profile/interests

它应该打开显示有兴趣选项卡的配置文件视图。

这很简单,现在变得困难了。在配置文件视图中打开“联系人”选项卡时,如果用户单击“兴趣”选项卡,我希望使用来自AJAX调用的HTML呈现该选项卡,并且我希望URL更改并显示

  

www.mywebsite.com/profile/interests

这可能吗?我怎么能做到这一点?

P.S。如果有人想要更改此问题的标题,请随时这样做。谢谢!

1 个答案:

答案 0 :(得分:0)

Javascript不允许您在不触发页面加载的情况下更改URL - 这是一个基本的安全功能,因为网络钓鱼者会使用它来使它看起来像你在usbank.com而不是stealingyouridentity.com。

使用window.location.hash而不是完整的新网址的最佳方式。