我有一个使用 thymeleaf 模板的页面,并且在使用内联脚本时在页面加载时出现以下错误:
org.xml.sax.SAXParseException; lineNumber: 270; columnNumber: 85; The content of elements must consist of well-formed character data or markup.
第 270 行的代码
<script type="text/javascript" >
window.jQuery || document.write("<script src='assets/js/jquery-2.0.3.min.js'>"+"<"+"/script>");
</script>
我尝试用 <
>
替换 document.write 中的“<”、“>”符号,异常不再发生,但脚本是不再加载
最佳答案
您需要像这样为脚本添加 CDATA 标签:
<script type="text/javascript">
//<![CDATA[
window.jQuery || document.write("<script src='assets/js/jquery-2.0.3.min.js'>"+"<"+"/script>");
//]]>
</script>
标签告诉 thymeleaf 的 xml 解析器,它们之间的代码不应被解释为 XML 标记。
自 Thymeleaf 3.0 以来不再需要
关于javascript - Thymeleaf 和内联脚本 SAXParseException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22985898/