grails gsp页面显示数据库中的html代码乱码/自动编码解决方案

发布于2014-12-25 11:57:23

数据库中存储的是一段html代码,在grails2.3下在页面中显示总是显示一段被转义后的html代码,解决方案:

1:在grails-app/utils/下创建HTMLCodec.groovy,在其中的decode方法中进行反转:

static decode = { theTarget ->
        org.springframework.web.util.HtmlUtils.htmlUnescape(theTarget.toString())
}

页面上需要显示html的地方调用decodeHTML(),则转义后的html代码自动反转回来。

2:encodeAsRaw,该方法没有亲自试用,http://stackoverflow.com/questions/25560551/groovy-can-not-encodeashtml上有使用方法:

    ${raw(book.introduction.encodeAsHtml())}

   or:${book.introduction.encodeAsHtml().encodeAsRaw()}

   or grails tag:

<g:encodeAs code="Raw">${book.introduction.encodeAsHtml()}</g:encodeAs>
<g:encodeAs code="None">${book.introduction.encodeAsHtml()}</g:encodeAs>

猜你喜欢

转载自blog.csdn.net/AJian759447583/article/details/42144427
今日推荐