반응형
페이지 다시 로드 없이 Ajax 성공 후 URL 변경 방법
이것은 아약스입니다.
$(".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);
}
})
})
이것은 작동하지만, 나는 그곳에 많은 매개 변수가 있고 물론 그것과 함께 있기 때문에 URL이 변경되기를 원합니다.data: "urut="+$(".urut").val(),매개 변수도 마찬가지입니다.
성공 작업을 수행할 수 있습니다.
window.history.pushState("object or string", "Title", "/new-url");
기본적인 방법은 페이지를 다시 로드하지 않고 URL을 수정하려면 이 게시물을 참조하십시오.
추가 참고:
- 첫 번째 매개 변수는 웹 페이지의 상태가 변경되는 경우(예: 브라우저에서 뒤로 또는 앞으로 버튼을 누를 때) 필요한 데이터입니다.Firefox에서 이 데이터는 640k자로 제한됩니다.
- 제목은 문자열이 될 수 있는 두 번째 매개 변수이지만, 쓸 때 모든 브라우저는 단순히 무시합니다.
- 이 최종 매개 변수는 주소 표시줄에 표시할 URL입니다.
이제 대부분의 "현대식" 브라우저에서 사용할 수 있습니다.
브라우저 기록을 사용하여 JS의 URL 표시줄을 변경합니다.
history.pushState()
history.replaceState()
https://developer.mozilla.org/en-US/docs/Web/API/History_API
이것을 먹어보세요.
$(".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");
}
});
});
언급URL : https://stackoverflow.com/questions/38089507/how-to-change-url-after-success-in-ajax-without-page-reload
반응형
'programing' 카테고리의 다른 글
| oracle 프로시저가 정수를 반환합니다. (0) | 2023.07.31 |
|---|---|
| jQuery append() - 추가된 요소 반환 (0) | 2023.07.31 |
| 템플릿 엔진을 사용하지 않고 부팅 (0) | 2023.07.31 |
| Spring boot - 로그인 후 사용자 객체 반환 (0) | 2023.07.31 |
| 스크롤 뷰 내에서 선형 레이아웃이 확장되지 않음 (0) | 2023.07.26 |