form에서 '<', '>', '(', ')' 등등 특수문자를 servlet으로 전달받는데
이상하게 화면에서 &#40; 으로 변경되서 보이는게 아닌가 아마도 파라미터 전달과정에서 encode 된것 같은데
문제는 2중으로... 되서 브라우져에서 보게되면 ( 으로 표시가되서 보인다는것이다
브라우저에서 정상적으로 보이려면 ( 정도는 되야 해석해서 보여줄텐데 말이다
jsp/servlet 단에서는 StringEscapeUtils 로 처리하면 되는데 화면에서 바로 처리해야 되니
jQuery html 코드를 이용해서 처리하기로 했다
물론 replace 를 사용해서 하나하나 처리해도 되긴할텐데
모든 특수문자를 처리하려면 코드표를 붙잡고 몇시간을 투자해도 모자를 테니
편하게 가주자
jQuery("selector").html(HTML문자열) 을 이용하면 엘레멘트에 html코드를 넣을수 있는데
이를 이용한것이다
var someHtmlString = '이건 &#40;중요&#41;';
console.log(someHtmlString)
//이건 &#40;중요&#41;
console.log(jQuery("<div>").html(someHtmlString).text());
//'이건 (중요)'
https://jsfiddle.net/zelkun/kmbL642x/
사실 변경될 태그의 id를 사용해도 되긴할텐데 변수로 받아서 변경하기위해
<div> 를 selector로 사용하고 html 문자로 디코딩 하고 이를 text로 읽어드린것이다
브라우저에서 해석을 해서 특수문자를 치환을 해주니 한번만 해줘도 된다
004. jQuery [시도/시군구/읍면동]을 이용한 selectbox 제어 with 기상청 동네예보 (0) | 2022.02.09 |
---|---|
input type="text" 자동완성 끄기 (autocomplete="off") (0) | 2021.04.30 |
003. jQuery ID중복과 라디오 박스 사용 예제 radio box control example (0) | 2019.08.25 |
002. jQuery 셀렉트박스 제어 예제 select box control example (2) | 2019.08.04 |
001. jQuery 선택자(SELECTOR) 사용과 예제 (0) | 2019.08.03 |
댓글 영역