【问题标题】:Thymeleaf: How to use boolean operator in JavaScript using ThymeleafThymeleaf:如何使用 Thymeleaf 在 JavaScript 中使用布尔运算符
【发布时间】:2015-02-25 11:56:38
【问题描述】:

我正在使用百里香,在javascript中使用th:inline="javascript",但是当我们在java脚本百里香中添加布尔条件时出现如下异常:

org.xml.sax.SAXParseException; lineNumber: 14; columnNumber: 22; The entity name must immediately follow the '&' in the entity reference.
com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:203)
com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:177)
com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:441)
com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:368)
com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1436)
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEntityReference(XMLDocumentFragmentScannerImpl.java:1845)
.............................

下面是我的javascript代码:

<script type="text/javascript" th:inline="javascript">
    $(document).ready(function(){
        $('.fancybox').fancybox({
            'width' :'623px',
            'maxHeight':'156px'
        });

        var catId = $("#category").val();
        if(catId != null && catId != ''){
            findSubCategories();
            /*<![CDATA[*/
                var subCatId = /*[[${searchProductDto.subCategory}]]*/
            /*]]>*/
            debugger;
            if(subCatId != null){
                $("#subCategory").val(subCatId);
            }
        }
    });
...............................

我们如何在百里香中使用 & 运算符?

【问题讨论】:

    标签: java javascript exception thymeleaf


    【解决方案1】:

    &lt;![CDATA[ 块包装 if 块

    <script type="text/javascript" th:inline="javascript">
    var a =b = true;
    /*<![CDATA[*/
    if(a && b){
        alert('Yea');
    }/*]]>*/
    </script>
    

    【讨论】:

    • 我们如何在 if 条件下使用&amp;amp;,浏览器会抛出错误。
    • @HarmeetSinghTaara:更新了我的答案。如果您还有问题,请告诉我
    【解决方案2】:

    script 标记的全部内容周围使用&lt;!CDATA[ 保护。

    【讨论】:

    • @HarmeetSinghTaara 不在您发布的代码中;您只在内联变量周围使用了 CDATA。
    猜你喜欢
    • 1970-01-01
    • 2021-07-14
    • 1970-01-01
    • 1970-01-01
    • 2023-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多