ajax url 생성 오류 문의
CMS/프레임워크 | Rhymix 2.0 |
---|---|
개발 언어 | PHP 7.2 |
라이믹스 업데이트 이후 ajax 실행이 정상적으로 되지 않아 스크립트에 디버그를 해보니
var ajax_data = ajax_url;
ajax_data = ajax_data.replace(request_uri, "");
ajax_data = ajax_data.replace("/index.php?", "");
ajax_data = ajax_data.replace("/?", "");
ajax_data = ajax_data.replace("index.php?", "");
ajax_data = ajax_data.replace("?", "");
console.log(ajax_data);
찍히는 url이
/shop_mapajax_lilst=y&kakaoMapLevel=5&ajax_list=y
의 결과가 나옵니다.
/shop_map/?ajax_lilst=y&kakaoMapLevel=5&ajax_list=y
이런식으로 되어야 할 url이 잘못된 최종 url로 생성이 되는 것 같습니다.
ajax_data.replace 부분에서 수정되어야 할 부분이 있을 것 같아 문의 드립니다.
댓글 3
왜 저런 식으로 구현해 놓았는지 모르겠지만, 슬래시도 지우고 물음표도 지우고
다 지우라고 해놓았으니 지워지는 것이 당연하지요.
RXE 자바스크립트에서 URL에 파라미터를 추가하거나, URL에서 파라미터를 추출할 때는
아주 오래 전부터 지원해 온 setQuery(), getQuery() 함수를 사용하는 것이 가장 안정적입니다.
관련 예제를 찾아보시기 바랍니다.
일단
var ajax_data = ajax_url;
이 값을 초기값을 직접 적용해서 ajax 후 url이 다시 영향을 받지 않도록 해서 해결은 한 것 같습니다.
조회나 검색 등 조건이 반영되지 않아서
최종적으로 생성되는 주소 단계에서
ajax_data = ajax_data.replace("/shop_mapajax_lilst=y", "ajax_lilst=y&mid=shop_map");
이런식으로 주소 자체를 고치는 편볍으로 일단 검색이나 정렬 조건에 맞게 ajax 처리 되도록 하긴 했네요.
이거 지식 없이 고쳐보려니 어렵네요.
중간에 다른 변수들이 추가되는 것들이 있어서....