找到一些經驗,關於使用thymeleaf時遇到的一些問題


最近一直在使用spring boot,所以自然而然的使用了thymeleaf,但是我想說習慣了jsp之后使用thymeleaf真實覺得不順手,在使用thymeleaf中也遇到了一些問題,在這里記錄一下,應該還是挺有用的,呵呵……

  • 問題一:org.xml.sax.SAXParseException: 元素類型 “input” 必須由匹配的結束標記 “” 終止。

    這是最簡單的一個問題,用過的,都知道,一般input遇到這種問題比較多。解決方法很簡單,加上’/’就行了。

  • 問題二:org.xml.sax.SAXParseException: 在實體引用中, 實體名稱必須緊跟在 ‘&’ 后面。

    在thymeleaf的js中使用&,<,>等符號時會產生這種問題,即使轉義也不行,解決方法:將你的js代碼包裹在<![CDATA[ ]]>之中即可,like this:<script>//<![CDATA[ js代碼 //]]></script>,詳情參考:http://blog.csdn.net/lijiaojiao123123/article/details/44954667

  • 問題三:如果你需要在js代碼中使用thymeleaf的表達式獲取你后端傳的值

    解決方法:<script type="text/javascript" th:inline="JavaScript"></script>,加上 th:inline=”JavaScript”標簽即可,在獲取值時這樣寫,var user = [[${user}]],注意無需加引號,而這樣獲取到的數據已經是一個json對象了,很方便.。

  • 問題四:你很可能在寫這樣的代碼:$("#select").append("<option value='"+value+"'>"+text+"</option>");時報這樣的錯:SyntaxError: missing ) after argument list

    解決方法:不要用”“包裹”,而要使用”包裹”“即可

  • 問題五:生成動態的class,而且還是多個,當時因為用到了treegrid樹形插件,所以需要動態的生成class,但是這個讓我當時摸索好一會兒

    解決方法:注意不要這樣寫:<tr th:class="'treegrid-'+${item.sid} 'treegrid-parent-'+${item.pSid}">,要這樣寫:<tr th:class="'treegrid-'+${item.sid}" th:classappend="'treegrid-parent-'+${item.pSid}">

暫時只遇到以上這些問題,未完待續……

原文轉自:http://blog.csdn.net/xyc_csdn/article/details/72801716


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM