在没有 html 和 body 标记的 grails 中渲染页面

Posted

技术标签:

【中文标题】在没有 html 和 body 标记的 grails 中渲染页面【英文标题】:Render a page in grails without html and body tag 【发布时间】:2011-06-17 07:28:50 【问题描述】:

我想在 grails 中呈现一个没有 <html><head><body> 标记的页面,我只想要 DIV 和表格。

我想把这个页面整合到我的Facebook页面中,Facebook页面的要求是页面不能包含<html><head><body>标签。

【问题讨论】:

【参考方案1】:

您可以使用 gsp 模板(GSP 文件名以“_”开头)。比你可以调用你的控制器使用渲染方法。

class MyDomainController
    def myAction = 
       ...
       render(template:'myTemplate', model: ...)
    

【讨论】:

【参考方案2】:

定义一个只包含<g:layoutBody /> 标记的layout。

我建议查看Grails Web Layer。请注意,如果您不使用布局,那么您可以简单地省略 head 和 body 标签。 SiteMesh(和 Grails)不在乎它们是否存在。另一张海报推荐了一个模板。如果您正在使用带有 SiteMesh 的布局,那么简单地渲染模板然后编写覆盖布局可能会更容易。

【讨论】:

【参考方案3】:

Grails 不在乎,如果您的 gsp 中有 html 和 head 标签,并且您选择制作没有模板的 gsp,那也没关系。如果你只制作一个页面片段,grails 会愉快地渲染它。

【讨论】:

以上是关于在没有 html 和 body 标记的 grails 中渲染页面的主要内容,如果未能解决你的问题,请参考以下文章

Grails sitemesh 是不是有任何解决方法不支持带有开放 HTML 正文标记的 if 语句

如何使用 CKEditor 在 Grails 中保存和显示 HTML?

来自grails中siteMash的自定义body类

Chrome开发人员工具不会检查body标记内的元素(mac OSX)

Gsp

在body标记之前使用'defer'属性和脚本