【问题标题】:How to pull in html from external url in GSP page如何从 GSP 页面中的外部 url 中提取 html
【发布时间】:2013-09-03 15:28:04
【问题描述】:

我对 Grails 还很陌生,似乎无法找到解决这个问题的方法。

我希望从外部 url 中提取 html 并将其输出到 GSP 页面上。像这样的东西(知道这实际上不起作用):

<g:render template="http://somesite.com/wp-admin/admin-ajax.php?action=include_banner" />

我想要拉入这个 html 的原因是因为我们在 grails 应用程序和我们的 wordpress 实例之间复制了 html。

任何帮助将不胜感激。

【问题讨论】:

  • 重复问题可以找到here
  • @dmahapatro - 这不是同一个问题。上面链接的问题表明文件在同一个项目中。对于这个问题,显然不是这样。
  • @Gregg 我们不能通过new URL(aboveUrl).text 获取 url 的内容并将其呈现在 DOM 中,如 Don 提供的另一个答案所示,他正在从文件中读取内容(每个其他步骤几乎保持不变)?

标签: grails gsp


【解决方案1】:

有两种解决方法:

1) 您可以使用 iframe 或 object 标签从外部 URL 呈现 html。 示例:

<object width="600px" height="600px" data="url">
</object>

&lt;iframe name="inlineframe" src="url" &gt;&lt;/iframe&gt;

2) 其次,我们可以使用 grails 方式: 您可以定义一个以 url 作为输入的自定义标签

    def myOwnRender={attrs,body->
        out<<"""<div id="inline_div"></div><script type='text/javascript'>$.post("${attrs['url']}",function(result){
    $("div#inline_div").html(result);
  });</script>"""        


  }

第一个在我看来是一个更简单的解决方案。

希望对你有帮助!!!

谢谢

【讨论】:

  • 感谢您的回复。 #1 对我不起作用,因为我像 区域一样将 html 拉入。 #2 将依赖于 javascript,我真的不喜欢它的性能(站点必须进行一堆 ajax 调用)。我将研究制作我自己的自定义标签,就像 dmahapatro 指出的那样。
猜你喜欢
  • 1970-01-01
  • 2020-02-15
  • 2013-03-09
  • 1970-01-01
  • 1970-01-01
  • 2019-11-07
  • 2016-04-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多