프로그래밍 언어/HTML,CSS,JS

jQuery로 HTML 문자열 이스케이프

Rateye 2021. 7. 1. 10:11
728x90
반응형

 

질문 : jQuery로 HTML 문자열 이스케이프

누구든지 jQuery의 문자열에서 HTML을 이스케이프하는 쉬운 방법을 알고 있습니까? 임의의 문자열을 전달할 수 있어야하며 HTML 페이지에 표시하기 위해 적절하게 이스케이프 처리해야합니다 (JavaScript / HTML 주입 공격 방지). 이 작업을 수행하기 위해 jQuery를 확장 할 수 있다고 확신하지만 현재로서는 프레임 워크에 대해 충분히 알지 못합니다.

답변

jQuery를 사용하고 있으므로 요소의 text 속성 만 설정할 수 있습니다.

// before:
// <div class="someClass">text</div>
var someHtmlString = "<script>alert('hi!');</script>";

// set a DIV's text:
$("div.someClass").text(someHtmlString);
// after: 
// <div class="someClass">&lt;script&gt;alert('hi!');&lt;/script&gt;</div>

// get the text in a string:
var escaped = $("<div>").text(someHtmlString).html();
// value: 
// &lt;script&gt;alert('hi!');&lt;/script&gt;
출처 : https://stackoverflow.com/questions/24816/escaping-html-strings-with-jquery
728x90
반응형