使用freemarker賦值給js變量,變量包含換行會報錯

這個問題百度找不到答案,後來本身摸索解決了javascript

<script type="text/javascript">

       var editor1 = ace.edit("request_body");
        editor1.setTheme("ace/theme/tomorrow");
        editor1.session.setMode("ace/mode/javascript");
    <#if mockDto.body !!>
            var val = '${mockDto.body}';//這裏若是有換行符會報錯
            editor2.session.setValue(val);
        </#if>
</script>

頁面控制檯會報錯html

解決辦法:java

在頁面加一個隱藏域,先用freemarker賦值,再讀取這個隱藏域的值session

...
//這裏加個?html爲了解決,文本是HTML,頁面出現問題
<input type="hidden" name="body_value" value="${mockDto.body?html}"/> ... <#if mockDto.body !!> var val = $("input[name='body_value']").val(); editor2.session.setValue(val); </#if>

解決問題!!!!spa

相關文章
相關標籤/搜索