현재 실행중인 파일에서 일부 값이 변경되어 그 값을 가지고 변경되어야 할 경우가 있다.
PHP 에서 echo $_SERVER['PHP_SELF']; 로 확인해보면 http://domain/path/filename.php 까지를 추출한다.
jQuery 에서 alert($(location).attr('href')); 로 확인해보면 $(location).attr('href'); 는 뒤에 GET 변수까지를 추출한다.
그래서
var pageURL = $(location).attr('href')+"?ym=" + optVal;
$(location).attr('href', pageURL);
로 하면 잘못된 결과가 나온다.
즉 GET 변수까지를 $(location).attr('href') 로 인식하므로 뒤에 또 덧붙여져 ?ym=201611?ym=201612 이런 식이 되어 버린다.
그래서 PHP 를 같이 활용하여
var pageURL = "<?php echo $_SERVER['PHP_SELF'];?>?ym=" + optVal;
$(location).attr('href', pageURL);
로 코드 구현해서 원하는 결과를 얻었다.
$('#selectmonth').on('change',function(){
if(this.value !== ""){
var optVal=$(this).find(":selected").val();
var pageURL = "<?php echo $_SERVER['PHP_SELF'];?>?ym=" + optVal;
$(location).attr('href', pageURL);
}
});
참고사항
$(location).attr('host'); // returns host
$(location).attr('hostname'); // returns hostname
$(location).attr('path'); // returns path
$(location).attr('href'); // returns href
$(location).attr('port'); // returns port
$(location).attr('protocol'); // returns protocol
'Web 프로그램 > js, jQuery' 카테고리의 다른 글
[jQuery] Converting JSON Object into Javascript array (0) | 2016.12.31 |
---|---|
[jQuery] How to enable or disable my Internet browser's Autocomplete (0) | 2016.12.31 |
[jQuery] Autocomplete using PHP/MySQL and jQuery (0) | 2016.12.21 |
[Jquery] 부모창 제어/접근 (0) | 2016.12.18 |
[jQuery] form문에서 submit 시 window.open 으로 action 처리 하기 (0) | 2016.12.18 |