So ändern Sie die URL nach Erfolg in Ajax ohne Neuladen der Seite

Lesezeit: 3 Minuten

Benutzer-Avatar
Dimas Adi Andrea

Das ist das Ajax

$(".urut").change(function() {
  $.ajax({
    url: "<?php echo base_url(); ?>categories/brand/<?= $link_brand; ?>?l=<?= $l; ?>&h=<?= $h; ?>&city=<?= $city; ?>&city_name=<?= $city_name; ?>&ket=view",
    type: "POST",
    data: "urut=" + $(".urut").val(),
    success: function(data) {
      $("#result").html(data);
    }
  })
})

Das funktioniert, aber ich möchte die URL ändern, weil ich dort viele Parameter habe und natürlich mit der data: "urut="+$(".urut").val(), auch Parameter.

  • Wenn Sie die URL ändern, wird sie neu geladen. sorry wenn ich deine frage falsch verstanden habe. Wenn ich es getan habe, klären Sie es bitte auf

    – Guradio

    29. Juni 2016 um 2:48 Uhr

  • Warum sollten Sie eine Seite neu laden, weil Sie weitere Parameter zu einer hinzufügen müssen ajax Anfrage? Ich bin mir nicht sicher ob ich das verstehe. (Nebenbemerkung, wussten Sie, dass Sie ein Objekt mit Schlüssel-Wert-Paaren übergeben können?)

    – Assimilator

    29. Juni 2016 um 2:48 Uhr


  • history.pushState(). history.replaceState() developer.mozilla.org/en-US/docs/Web/API/History_API

    – Künstlerischer Phönix

    29. Juni 2016 um 2:49 Uhr

  • Mögliches Duplikat von Ändern Sie die URL, ohne die Seite neu zu laden

    Benutzer5051310

    29. Juni 2016 um 6:24 Uhr

Benutzer-Avatar
Sherly Febrianti

Das können Sie zu Ihrer Erfolgsaktion machen:

window.history.pushState("object or string", "Title", "/new-url");

In diesem Beitrag zum Ändern der URL ohne Neuladen der Seite finden Sie eine grundlegende Anleitung.

Zusätzliche Anmerkung:

  1. Der erste Parameter sind die Daten, die wir benötigen, wenn sich der Zustand der Webseite ändert, beispielsweise wenn jemand in seinem Browser auf die Schaltfläche „Zurück“ oder „Vorwärts“ klickt. Beachten Sie, dass diese Daten in Firefox auf 640.000 Zeichen begrenzt sind.
  2. title ist der zweite Parameter, der ein String sein kann, aber zum Zeitpunkt des Schreibens wird er von jedem Browser einfach ignoriert.
  3. Dieser letzte Parameter ist die URL, die in der Adressleiste erscheinen soll.

Es ist jetzt in den meisten “modernen” Browsern verfügbar.

  • Schade, dass ich dich um etwa eine Minute geschlagen habe 🙂

    – Künstlerischer Phönix

    29. Juni 2016 um 2:52 Uhr

  • Es ist fast fertig, aber ich weiß nicht, wie die Regel zum Hinzufügen von Parametern in “Objekt oder Zeichenfolge” lautet. kannst du mir zeigen? 🙂 @sherlyfebrianti

    – Dimas Adi Andrea

    29. Juni 2016 um 3:05 Uhr


  • @DimasAdiAndrea Ich habe die Antwort bearbeitet, weil das Kommentarfeld keine Eingabe unterstützen kann. 🙂

    – Sherly Febrianti

    29. Juni 2016 um 3:17 Uhr

  • Ich habe es gefunden, übrigens vielen Dank, deine Antwort hilft mir wirklich @sherlyfebrianti

    – Dimas Adi Andrea

    29. Juni 2016 um 3:42 Uhr


  • @DimasAdiAndrea okay, stimme einfach meiner Antwort zu und markiere sie als Antwort, wenn sie dir wirklich hilft 🙂

    – Sherly Febrianti

    29. Juni 2016 um 3:43 Uhr

Verwenden Sie den Browserverlauf, um die URL-Leiste in JS zu ändern.

      history.pushState()
     history.replaceState()

https://developer.mozilla.org/en-US/docs/Web/API/History_API

Benutzer-Avatar
ANIK ISLAM SHOJIB

Versuche dies

 $(".urut").change(function() {
    $.ajax({
        url: "<?php echo base_url(); ?>categories/brand/<?= $link_brand; ?>?l=<?= $l; ?>&h=<?= $h; ?>&city=<?= $city; ?>&city_name=<?= $city_name; ?>&ket=view",
        type: "POST",
        data: "urut=" + $(".urut").val(),
        success: function(data) {
            $("#result").html(data);
            window.history.pushState("Details", "Title", "<?php echo base_url(); ?>/yourNewPage");
        }
    });
});

1063490cookie-checkSo ändern Sie die URL nach Erfolg in Ajax ohne Neuladen der Seite

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy