在thymeleaf的js中使用&,<,>等符號時會產生這種問題,因為thymeleaf是采用xml解析的方式進行替換的,所以javascript中&這樣的xml實體轉義字符會被識別為轉義,所以會出sax解析錯誤。
解決:使用
/*<![CDATA[*/
/*]]>*/
包裹代碼塊
<script> /*<![CDATA[*/ function test() { $.ajax({ type: "POST",//方法類型 dataType: "json",//預期服務器返回的數據類型 contentType: 'application/json', url: "xxxxx",//url data: {}, success: function (result) { }, error: function () { alert("異常!"); } }); } /*]]>*/ </script>
在js代碼中使用thymeleaf的表達式獲取后端傳的值
解決方法:,加上 th:inline=”JavaScript”標簽,在獲取值時var user = [[${user}]],注意無需加引號