在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。如果有人想要更改此问题的标题,请随时这样做。谢谢!
答案 0 :(得分:0)
Javascript不允许您在不触发页面加载的情况下更改URL - 这是一个基本的安全功能,因为网络钓鱼者会使用它来使它看起来像你在usbank.com而不是stealingyouridentity.com。
使用window.location.hash
而不是完整的新网址的最佳方式。