This is the 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); } }) })
This works, but i want the url to change because I have many parameters there and of course with the data: "urut="+$(".urut").val(),
parameter as well.
You can do this to your success action : window. history. pushState("object or string", "Title", "/new-url");
This is simple you just need change the URL In HTML5 as : window. history. pushState("object or string", "Title", "/new-url");
the page using JavaScript? the page using JavaScript? Method 2: Adding a new state with pushState() Method: The pushState() method is used to add a new history entry with the properties passed as parameters. This will change the current URL to the new state given without reloading the page.
You can do this to your success action :
window.history.pushState("object or string", "Title", "/new-url");
See this post to Modify the URL without reloading the page for a basic how-to.
Additional Note:
- The first parameter is the data we'll need if the state of the web page changes, for instance whenever someone presses the back or forwards button in their browser. Note that in Firefox this data is limited to 640k characters.
- title is the second parameter which can be a string, but at the time of writing, every browser simply ignores it.
- This final parameter is the URL we want to appear in the address bar.
It's now available in most "modern" browsers.
Use the browser history to change the url bar in JS.
history.pushState() history.replaceState()
https://developer.mozilla.org/en-US/docs/Web/API/History_API
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With