function userDetail(userId){
location.href = "/detail?userId=" + userId;
return false;
}
이렇게 파라미터를 controller로 넘길 경우,
#와 같은 문자가 사라진채로 넘어가는 경우가 있다.
예) 'userId!@#' -> 'userId!@'
function userDetail(userId){
location.href = "/detail?userId=" + encodeURIComponent(userId);
return false;
}
이렇게 넘기면 손실 없이 넘길 수 있다.
p.s.
그러나, 위의 예제와 같은 인코딩이 필요한 요소의 경우(아이디, 시퀀스 등) 해당 방법보다는
인코딩하여 넘기고 구현체에서 디코딩(base64) 하는 방법 추천.
encodeURIComponent()
함수는 uri 구성요소로 인코딩
'FRONTEND > js' 카테고리의 다른 글
jsp 이전페이지 "uri" 가져오기 (0) | 2022.03.23 |
---|---|
A 태그(Ahchor) href, onclick 차이 (0) | 2022.01.19 |
jquery-confirm (0) | 2021.10.01 |
스크롤탑 (0) | 2021.09.15 |
jquery label 선택자 (0) | 2021.09.13 |