13.14 SpringBoot整合JSP模板引擎:JSP頁面樣式亂掉
13.14 SpringBoot整合JSP模板引擎:JSP頁面樣式亂掉
關鍵詞:JS編碼&解碼&HTML轉義escape , unescape
Blog功能模組,顯示文章詳情,文章內容中有jsp程式碼,頁面亂掉。如下圖所示
原因分析
在如下的HTML/JSP原始碼中,有特殊字元(比如說,html標籤,</textarea>)
<textarea>HTML/JSP原始碼</textarea>
導致頁面樣式亂。
解決方案
對“HTML/JSP原始碼”這段文字進行escape編碼。在js中再進行解碼。
jsp頁面中對文字的輸出進行escape編碼,escapeXml="true":
<%--escapeXml:是否轉換特殊字元--%>
<textarea id="blogContent" style="display: none"><c:out value='${blog.content}' escapeXml="true"></c:out></textarea>
在js中對編碼後的文字作解碼unescape處理:
/**
* Created by jack on 2017/3/29.
*/
define(function (require) {
"use strict";
require('meditor');
$(function () {
var parser = new Mditor.Parser();
// var blogContent = document.getElementById('blogContent').innerHTML;//這個遇到<>等特殊字元會被轉譯
var blogContent = document.getElementById('blogContent').value; //直接取原本的字串。不會被轉譯,預設html頁面中textarea區域text需要escape編碼
blogContent = unescape(blogContent);//unescape解碼
var html = parser.parse(blogContent);
$('#rest-blog-body').append(html);
hljs.initHighlightingOnLoad();
//原始碼高亮
$('pre code').each(function(i, block) {
hljs.highlightBlock(block);
});
//編輯文章
$('#goEditBlog').on('click',function () {
var blogId = $('#blogId').val();
location.href = 'goEditBlog?id=' + blogId;
});
});
});
測試驗證
驗證OK。
工程原始碼:https://github.com/Jason-Chen-2017/restfeel/tree/restfeel_jsp_escape_unescape_2017.5.7
相關文章
- jsp頁面傳中文到資料庫亂碼JS資料庫
- springboot使用外部tomcat啟動,整合jsp,另有整合dubbo樣例Spring BootTomcatJS
- JSP註冊頁面JS
- SpringBoot整合Jsp和Thymeleaf (附工程)Spring BootJS
- SpringBoot第十二篇:整合jspSpring BootJS
- JSp頁面使用El表示式取不到值JS
- mybatis plus +springboot +jsp整合踩坑指南MyBatisSpring BootJS
- jsp頁面掛死問題JS
- JSP筆記-頁面重定向JS筆記
- SpringMVC中JSP頁面不顯示EL表示式的原因SpringMVCJS
- jsp+servlet登入註冊頁面JSServlet
- 教你如何寫第一個jsp頁面JS
- IDEA解決JSP頁面無法使用EL表示式問題IdeaJS
- Tomcat配置jsp亂碼問題TomcatJS
- jsp頁面通過url向後臺傳值時的中文亂碼問題JS
- casid/jte:用於Java和Kotlin的Jsp/Java的Web模板引擎JavaKotlinJSWeb
- SpringBoot中使用jsp的坑Spring BootJS
- jsp頁面判斷檔案上傳型別JS型別
- SpringBoot配置外部Tomcat並支援JSPSpring BootTomcatJS
- SpringBoot 同時整合thymeleaf html、vue html和jsp-線上助手Spring BootHTMLVueJS
- FindBugs Security JSP 無法識別 jsp 頁面<script>jstl</script>程式碼中的 xss 漏洞問題JS
- webscoket+jsp實現簡單的多人聊天頁面WebJS
- jsp頁面中同時遍歷多個list集合JS
- java servlet 與jsp幾種頁面跳轉的方法JavaServletJS
- 幾種常見的JSP中文亂碼JS
- jsp標籤jsp:useBean用法JSBean
- jsp基礎-初識jspJS
- SpringBoot2 整合FreeMarker模板,完成頁面靜態化處理Spring Boot
- jsp隱式物件-Servlet物件JS物件Servlet
- JSP筆記-隱式物件JS筆記物件
- JSP 表示式語言概述JS
- JSPJS
- 解決Spring Boot無法跳轉jsp頁面問題Spring BootJS
- jsp頁面number型別自動轉為String型別JS型別
- Eclipse匯入專案後JSP頁面出現報紅EclipseJS
- jsp頁面表單不輸入卻能登入成功?JS
- JSP怎樣將查詢的資料實現分頁操作JS
- SAP Commerce開發之如何找到某個頁面對應的JSP實現頁面JS
- 【Java面試】JSP常見面試題!JavaJS面試題