加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 资源网站 > 资源 > 正文

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

发布时间:2020-12-14 18:56:19 所属栏目:资源 来源:网络整理
导读:我试图从taglib渲染我的模板: out g.render(template: "/menu/sidebar") 这是我的侧边栏模板的样子: ul liTEST1/li liTEST2/li/ul 当我在浏览器中检查我的页面时,整个模板代码会显示在这样的撇号中 "ul liTEST1/li liTEST2/li/ul" …并打印我的html代码就
我试图从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字符.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读