>웹 프론트엔드 >JS 튜토리얼 >JQuery의 html(데이터) 메소드 및 <script>script block_jquery에 대한 솔루션

JQuery의 html(데이터) 메소드 및 <script>script block_jquery에 대한 솔루션

WBOY
WBOY원래의
2016-05-16 18:32:43887검색

“오늘 jQuery(...).html() 메서드에서 반환된 HTML이 모든 <script> 블록을 필터링한다는 사실을 방금 확인했습니다. 하지만 때때로, 특히 AJAX 애플리케이션에서는 <script>을 유지해야 하는 경우가 많습니다. 스크립트가 포함된 내용의 부분 업데이트와 같은 HTML.Block. 이때 HTML을 읽고 작성하려면 html()을 사용하지 마십시오. 이 문제 때문에 오늘은 한 시간을 낭비했습니다. <br><br> 테스트 결과 새 버전의 jQuery(...).html() 메서드가 발견되었습니다(1.3.2 이후 버전에서는 테스트하지 않았습니다). 더 이상 이 문제가 발생하지 않습니다(html() 메서드는 Dom 요소 데이터를 읽는 작업입니다). 하지만 html(data) 메서드를 사용하여 Dom 요소에 데이터를 쓰고 데이터 매개변수에 스크립트 스크립트가 포함되어 있는 경우 또 다른 비정상적인 현상이 발생합니다. 발생: Firefox(저는 3.6 사용) 브라우저에서 위 작업을 수행하면 데이터 매개변수의 스크립트 스크립트가 자동으로 실행되어 페이지 손상, 예외 및 기타 오류가 발생합니다. 예를 들어, 제가 직면한 문제는 다음과 같습니다. 스크립트의 .write 메서드를 사용하면 html(data) 작업이 완료된 후 전체 페이지의 원래 페이지가 일부 DOM 요소가 사라지고 document.write() 메서드의 실행 결과만 남게 되어 페이지가 중단되었습니다. . 구체적인 이유는 논의할 예정입니다. 결국 elem.innerHTML=data를 사용하여 문제를 해결했습니다.</script>

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.