'이스케이프처리'에 해당되는 글 2건

  1. 2018.05.24 jstl에서 따옴표 처리 (문자열 이스케이프 처리)
  2. 2018.05.24 jQuery에서 따옴표 처리하기
2018. 5. 24. 16:32

jstl 에서 DB 값에 "" 따옴표 가 있으면, input에 넣을때, 잘리는 현상이 발생한다.



자바스크립트에서 처리해 줘도 되고, jstl를 이용해서 값을 넣는다면, fn를 이용해도 된다.

자바스크립트에서 하는법 : http://tyson.tistory.com/128


예로 

name = 내 이름은 "Tyson"입니다.

라는 값이 있는데. 

밑에 처럼 넣으면,

<input type="text" value="name">


"(따옴표) 에서 짤려서,  " 내 이름은 " 까지만 나온다. 이때는 치환을 해줘야하는데, 


jstl fn에 있다.


먼저 

<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>

를 추가해준다.


그리고 밑에 처럼 사용하면 된다.


<input type="text" value="${fn:escapeXml(name) }">

'컴퓨터 > Java' 카테고리의 다른 글

HashSet 를 이용한 로또번호 만들기  (0) 2013.03.27
Posted by Tyson
2018. 5. 24. 16:24



DB에서 값을 가져와서, 수정 페이지를 만드는데, input value에 값을 넣는데,


데이터에 "(큰따옴표)  '(작은따옴표) 같은게 있으면, 앞에서 value를 잘라 버려서, 따옴표는 특수문자표를 써줘야한다.


&quot 나 &#39 같이 써줘야한다.


그래서 스크립트에 아에 펑션을 넣어주고 값에 써주면 된다.



var entityMap = {
  '&': '&amp;',
  '<': '&lt;',
  '>': '&gt;',
  '"': '&quot;',
  "'": '&#39;',
  '/': '&#x2F;',
  '`': '&#x60;',
  '=': '&#x3D;'
};

function escapeHtml (string) {
  return String(string).replace(/[&<>"'`=\/]/g, function (s) {
    return entityMap[s];
  });
}


출처 : https://code.i-harness.com/ko/q/60f0



원하는 값에. 예로


var _name = 내 이름은 "Tyson"입니다.


<input type="text" value="escapeHtml(_name)">


위처럼 써주면, 


내 이름은 &quot;Tyson&quot;입니다.


위처럼 들어가서 제대로 보인다.


처음에는 


내 이름은 "     <= 여기에서 잘렸다.


value값이 "를 마지막으로 인식해서였다.



===


자바스크립트에서 하는 방법이고, java jstl에서는 

fn:escapeXml

을 쓰면 된다.

jstl 에서 문자열 처리법 : 

http://tyson.tistory.com/129






Posted by Tyson