2016-05-16 6 views
0

Ich habe einige Tasten, wenn ein Benutzer auf einen von ihnen klicken sie den Inhalt der Seite durch Ajax aktualisieren, dann sind die Schaltflächen ausgeblendet und einige neue Schaltflächen sind für den Benutzer verfügbar. Das Problem ist, wenn ich die Zurück-Taste drücke, geht es nicht zur vorherigen Funktion zurück. Ich möchte der Benutzer hier auf die vorherige Reihe von Tasten gehen zurück mein Code:Zurück zu einer Funktion in jquery

$(".buttonset1").click(function() { 
    $('#div1').css("display","none"); 
    id = $(this).attr("value"); 
    query = 'ajax.php?id='+id; 
    myQuery(query); 
    $('#div2').css("display","block"); 
}); 

$(".buttonset2").click(function() { 
    $('#div2').css("display","none"); 
    value = $(this).attr("value"); 
    query = 'ajax.php?id='+id+'&var1='value; 
    myQuery(query); 
    $('#div3').css("display","block"); 
}); 

Jetzt wird div2 dem Benutzer angezeigt .... tut myQuery Funktion der Ajax-Abfrage

function myQuery(url) { 
    if (window.XMLHttpRequest) { 
     xmlHttp = new XMLHttpRequest(); 
    } else { 
     xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); 
    } 
    xmlHttp.onreadystatechange = function() { 
     if (xmlHttp.readyState == 4 && xmlHttp.status == 200) { 
      document.getElementById("sql").innerHTML = xmlHttp.responseText; 
     } 
    } 
    xmlHttp.open('GET', url, true); 
    xmlHttp.send(); 
} 
+0

Drücken der Zurück-Taste des Browsers würde zur vorherigen URL gehen, JavaScript-Code wird neu geladen (und Variablen Daten verloren), wenn Sie die Seite neu laden. Es gibt kein "Zurück" für JavaScript-Funktionen, Sie müssen Ihre vorherigen Variablen vor dem Update speichern und schreiben Sie eine Funktion, um sie wieder einzufügen (nicht auf die Schaltfläche Zurück Browser zu denken) –

+0

Wie wäre es mit history.pushstate ... Und gibt es einen anderen Weg, dies zu tun? –

+0

Wo hast du die Methode "pressstate()" gesehen? Ich denke https://developer.mozilla.org/en-US/docs/Web/API/History_API#The_pushState%28%29_method? –

Antwort

0

Gelöst es war ziemlich einfach

Verwandte Themen