.html 중에서에 HTML을 탈출 구문 분석하지 않습니다. 그러나 상자를 클릭하면 JavaScript가 실행됩니다.jQuery를 예를 들어이 HTML을 가지고() 메소드
.html
에서 .text
으로 변경하면 문자 그대로 줄 바꿈도 표시됩니다.
<br>
을 줄 바꿈으로 표시 할 수있는 방법은 무엇입니까? <
및 >
은 상자를 클릭 할 때 글자의 크기보다 작고 글자가 큼을 나타냅니다.
.html 중에서에 HTML을 탈출 구문 분석하지 않습니다. 그러나 상자를 클릭하면 JavaScript가 실행됩니다.jQuery를 예를 들어이 HTML을 가지고() 메소드
.html
에서 .text
으로 변경하면 문자 그대로 줄 바꿈도 표시됩니다.
<br>
을 줄 바꿈으로 표시 할 수있는 방법은 무엇입니까? <
및 >
은 상자를 클릭 할 때 글자의 크기보다 작고 글자가 큼을 나타냅니다.
JavaScript 기능에 도달하기 전에 문자가 onclick
으로 디코딩되고 있다는 문제가 있습니다.
두 번 인코딩해야합니다. 그래서 예는 될 것입니다 : 내가 태그를 (단일 인코딩)을 인코딩
<td onclick="$(this).html('Wanted HTML: <br>; Unwanted HTML: &lt;script&gt;alert(&#39;xss&#39;)&lt;/script&gt;')">
Click to Show
</td>
공지 사항 당신이이 원하는 할 . 또한 첫 번째 >
에 누락 된 세미콜론을 추가했습니다.
더 좋은 해결책은 HTML에서 이것을 완전히 제거하는 것입니다. 대부분의 개발자는 JavaScript가 상호 작용을 위해 사용되고 HTML은 콘텐츠를위한 것이라는 점에 동의하며 가능한 한 많이 혼합해야합니다 (addEventHandler
과 같은 호출로 콘텐츠에 JavaScript를 연결)
고마워요, 그게 효과가 있어요 :) – stackunderflow
예제는 축약되었습니다 - 실제로 이것을 사용하는 방식은 TD에 많은 양의 텍스트를 포함하고 있으므로 단축하고 전체 메시지로 확장 할 수 있습니다. – stackunderflow
@DuncanNZ 그러면 더 나은 (또는 적어도 더 순수한) 해결책은 전체 내용으로 숨겨진 div를 갖는 것입니다. 지정된 영역에 대해 긴 div에 대해 짧은 div를 교체하는 일반적인 JavaScript 함수 – Dave
이 코드는 무엇을하기로되어 있습니까? 다른 JavaScript에서 JavaScript를 출력하려고하는 이유는 무엇입니까? – woz
@woz 나는 폼 입력을 해킹하는 사람의 사례라고 생각한다. – Dave
td의 내용을 클릭하면 (onclick = "$ (this)) .html (''...). 그 점을 이해하고 있습니다. 다른 JavaScript에서 JavaScript를 출력하지 않습니다. - 그게 현재하고있는 것입니다 – stackunderflow