这是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);
}
})
})
&#13;
这有效,但我想要更改网址,因为我有很多参数,当然还有data: "urut="+$(".urut").val(),
参数。
答案 0 :(得分:29)
你现在可以在大多数&#34;现代&#34;浏览器<!/强>
你可以为你的成功行动做到这一点:
window.history.pushState("object or string", "Title", "/new-url");
有关基本操作方法,请参阅此帖子Modify the URL without reloading the page。
附加说明:
- 第一个参数是我们在网络状态下需要的数据 页面更改,例如每当有人按下后面或 转发浏览器中的按钮。请注意,在Firefox中,此数据是 限制为640k字符。
- title是第二个参数,可以是一个字符串,但当时 写作,每个浏览器都会忽略它。
- 此最终参数是我们要在地址中显示的网址 栏。
醇>
答案 1 :(得分:5)
使用浏览器历史记录更改JS中的网址栏。
history.pushState()
history.replaceState()
https://developer.mozilla.org/en-US/docs/Web/API/History_API
答案 2 :(得分:3)
试试这个
$(".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");
}
});
});