2011-01-20 92 views

回答

2

我的答案可能不一定涉及ASP.NET,但一般来说,Ajax。

jQuery有许多整洁的插件,它们允许您在使用ajax加载页面上的内容时维护浏览器历史记录。

一个我建议是jQuery的历史插件 - http://tkyk.github.com/jquery-history-plugin/

基本上你必须有URL内置的是这样的:

http://yourpage.com/#page1 
http://yourpage.com/#page2 

该插件将检测URL发生变化时,浏览器由于地址中存在散列,因此不会尝试重新加载页面。所以,当插件检测到地址改变时,你可以做任何你想做的事情。例如,地址更改为http://yourpage.com/#page1,然后jQuery History将检测到更改,并且您可以从触发地址更改的事件获取#page1字符串。然后你知道,啊!我有#page1,那么我应该做这个Ajax操作。

这也是非常简单的页面添加到使用jQuery历史的历史,你只需要做:

$.history.load(url); 

上有http://tkyk.github.com/jquery-history-plugin/#demoshttp://www.serpere.info/jquery-history-plugin/samples/

我希望这可以帮助,祝你好运许多很好的演示!

+0

你的解决方案真的很好,但它工作正常,如果我有一个单一的文本框,但如果我有超过1个文本框,那么它不工作,你有什么想法? – 2011-01-20 09:17:44