2009-06-10 14 views
1

Ich benutze Ajax in meiner Website. Wenn ein Benutzer eine Abfrage eingibt und eine Kategorie auswählt, aktualisiere ich die Seite mit vom Server abgerufenem Inhalt mit Ajax. Zusätzlich aktualisiere ich die URL mit einem Hash-Wert, der die Abfrage und die Kategorie getrennt durch eine & zeigt.Geschichte in Ajax speichern

Was ich tun möchte, ist es so zu machen, wenn die Browser-Zurück-Taste gedrückt wird, will ich das vorherige Ergebnis anzeigen, ohne neu zu laden.

Was ich bekomme, ist diese URL, die die vorherigen Werte hat, aber das Ergebnis wird nicht aktualisiert. Wie kann ich das ändern? Kann mir jemand helfen?

Antwort

2

Die kurze Antwort wäre die #hash Teil der URI, aktualisiert diese Teil aktualisiert nicht die Seite, und in den meisten Browsern macht eine Geschichte Checkpoint, aber in den meisten Browsern bedeutet, dass keine Unterstützung in IE6, und ich denke IE7. Der andere Weg ist, wenn Sie den IE erkennen, können Sie einen 1 Pixel iframe einbetten und legen Sie die Quelle auf eine Seite in Ihrer Domain, und machen Sie Ihr Javascript setzt es? Teil der URL, so dass die Seite aktualisiert wird, und in diesem Fall wird IE History Point speichern. Dieses Problem in IE8 gelöst

Beispiel

http://codinginparadise.org/weblog/2005/08/ajax-tutorial-tale-of-two-iframes-or.html

+0

, was ich will, ist eine Lösung Wich kann IE FF SAFARI etc .... unterstützen müssen es auch tun, ohne erfrischend .... ist ther eine Lösung??? –

+0

Der Iframe funktioniert auf allen Browsern und aktualisiert Ihre Seite nicht, sondern aktualisiert nur Ihren unsichtbaren iframe http://codinginparadise.org/weblog/2005/08/ajax-tutorial-tale-of-two-iframes -oder.html – bashmohandes