【问题标题】:Grails and AJAX: remoteLink causes redirect, not updated divGrails 和 AJAX:remoteLink 导致重定向,而不是更新 div
【发布时间】:2012-07-08 23:23:06
【问题描述】:

我正在尝试使用该标签制作一个启用 ajax 的 webapp。因为某些原因, 它将整个页面重定向到我的模板,并且不更新指定的 div。

这是我目前所拥有的:

在我的 GSP 文件的头部:

<g:javascript library="jquery" />
<g:setProvider library="jquery"/>

在我的 GSP 文件正文中:

 <div id="message"></div>
 <g:remoteLink controller ="reqOff" action="quick_req" update="[success: 'message']">ar</g:remoteLink>

我的控制器方法返回一个模板;这似乎工作正常。

问题:

现在,它不会更新 div,而是在新页面上呈现我的模板。

其他说明: - 我的 grails 版本是 1.4.0.M1 - 我的 jquery 插件已安装并更新到 1.7.2 - 我认为没有其他冲突的 JS 库

【问题讨论】:

  • 你查看过页面的源代码并验证了jquery库的来源吗?
  • 它似乎正在生成一个 ajax 链接,带有一个指向控制器等的 onClick 事件。但是 部分并没有什么看起来像导入 jquery 的东西,这有点奇怪。
  • 你安装了资源插件吗?也许缺少r:layoutResources 标签?
  • 由资源插件更新,在头部和主体的主要布局中添加了 r:layoutResources 资源。还是一样的。但是我的 CSS 都没有正确加载了,但我猜这是另一个问题。

标签: ajax grails


【解决方案1】:

我修复了 JQuery 的问题,顺便说一下,它与 cmets 中提到的 CSS 问题有关。事实证明,当 Gregg 指出 jQuery 可能无法加载时,他是在做某事。

我所做的是升级我的资源插件,因为它破坏了我的应用程序,迫使我了解资源插件的实际作用。在设置我的模块并获得 r:require 和 r:layoutResources 标签后,一切都加载得很好。经过了一些尝试和错误,我遵循了插件作者的教程类型博客文章:http://www.anyware.co.uk/2005/2011/09/12/optimising-your-application-with-grails-resources-plugin/

最后,请检查以确保您的资源使用资源插件正确加载。我假设 g:javascript 标签加载了 jQuery,但对于我的应用程序,显然不是这种情况。

【讨论】:

    猜你喜欢
    • 2015-03-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-29
    • 1970-01-01
    • 2012-02-04
    • 2016-05-12
    • 1970-01-01
    相关资源
    最近更新 更多