微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

模板 – Grails:以HTML格式从taglib呈现模板

我试图从taglib渲染我的模板:
out << g.render(template: "/menu/sidebar")

这是我的侧边栏模板的样子:

<ul>
    <li>TEST1</li>
    <li>TEST2</li>
</ul>

当我在浏览器中检查我的页面时,整个模板代码显示在这样的撇号中

"<ul>
    <li>TEST1</li>
    <li>TEST2</li>
</ul>"

…并打印我的HTML代码就像一个纯文本.任何想法如何使它将内容识别为正确的HTML代码

编辑:Taglib代码

class MenuTagLib {
    static defaultEncodeAs = 'html'
    def renderIfExists = { attrs,body->
        GrailsConventionGroovyPageLocator groovyPageLocator
        println attrs.template
        if(groovyPageLocator.findTemplateByPath(attrs.template))
        {
            g.render(template:attrs.template)
        }
        else{   


            out << g.render(template: "/menu/sidebar")
        }
    }
}

调用它的方式:

<g:renderIfExists template="/${params.controller}/sidebar" plugin="untitled1" />

解决方法

如果我不得不猜测,那就是你在课堂上有这样的事情:

static defaultEncodeAs =’html’

您应该删除该行,然后重试.这表示它应该转义html字符.

原文地址:https://www.jb51.cc/html/224808.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐