Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在jquery中用CDATA标记包装一些html?_Javascript_Jquery_Html_Cdata_Html Sanitizing - Fatal编程技术网

Javascript 如何在jquery中用CDATA标记包装一些html?

Javascript 如何在jquery中用CDATA标记包装一些html?,javascript,jquery,html,cdata,html-sanitizing,Javascript,Jquery,Html,Cdata,Html Sanitizing,如何在CDATA标记中的元素中包装一些html,使其可以说是“消毒”的 我试过 $(this).html( "<![CDATA[" + $(this).html() + "]]>" ); 第一个将其包装在save html entities中,因此它不是CDATA标记。第二个不起作用 谢谢。浏览器仅支持XHTML中的CDATA标记,因此您需要: 编写XHTML 将其用作内容类型:application/xhtml+xml,这样浏览器就不会将其推送到HTML解析器中 (我只在Chro

如何在CDATA标记中的元素中包装一些html,使其可以说是“消毒”的

我试过

$(this).html( "<![CDATA[" + $(this).html() + "]]>" );
第一个将其包装在save html entities中,因此它不是CDATA标记。第二个不起作用


谢谢。

浏览器仅支持XHTML中的CDATA标记,因此您需要:

  • 编写XHTML
  • 将其用作
    内容类型:application/xhtml+xml
    ,这样浏览器就不会将其推送到HTML解析器中
  • (我只在Chrome上测试了上述内容,你可以)

    您最好让浏览器将其视为文本,而不是HTML:

    $(this).text( $(this).html() );
    

    您想通过使其“消毒”来实现什么?无论您在哪里尝试,CDATA都属于XML,而不是HTML,尤其不是HTML5。你不需要在这里“消毒”任何东西
    $(this).text( $(this).html() );