首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Ajax下载的Javascript不能在grails中执行

Ajax下载的Javascript不能在grails中执行
EN

Stack Overflow用户
提问于 2013-01-09 08:35:36
回答 1查看 251关注 0票数 0

我有一个布局,它加载我的应用程序中使用的所有公共资源,但是当我通过ajax加载页面时,gsp本身会呈现,我可以看到ajax调用下载了js文件(通过firebug),但实际的代码没有执行。

我尝试了以下方法从ajax加载的页面下载并执行js文件,但没有成功。任何帮助都将不胜感激。

使用的方法

代码语言:javascript
运行
复制
<r:require modules="announcements" />
<r:layoutResources/>

结果: js文件已下载但未执行

使用的方法

代码语言:javascript
运行
复制
<g:javascript library="announcements"/>

  with and without

  <r:layoutResources/>

结果:文件未下载

方法:

代码语言:javascript
运行
复制
<script type="text/javascript" src="js/announcements.js"></script>

结果: http代码302临时移动并尝试下载js/static/宣告.js,这给出了一个http代码200,但是firebug显示它仍在等待文件,因此它没有被执行。

layout.gsp:

代码语言:javascript
运行
复制
<html>
  <head>
    ...
      <g:if test="${session.isLoggedIn}">
        <r:require modules="ui, jqueryDateFormat, loggedin" />
      </g:if>
      <g:else>
        <r:require modules="ui" />
      </g:else>
      <r:layoutResources/>

      <g:layoutHead />
  </head>
  ...
</html>

ajax加载页面

代码语言:javascript
运行
复制
<html>
  <head>
    <all methods mentioned above>
    ...
  </head>
  <body>
    ...
  </body>
</html>

更新:我解决了这个问题。原来我的JS文件中有一个语法错误。Firebug没有识别错误,它只是因为JS崩溃而停止。我不得不将库调用移到我的布局中来查找错误。修复了JS和moved,并将该行添加回gsp,所有这些都可以再次工作。

EN

回答 1

Stack Overflow用户

发布于 2013-01-09 08:47:48

这是最正确的方法。

代码语言:javascript
运行
复制
<script type="text/javascript" src="js/announcements.js"></script>

如果302 produce 200但文件未下载,则应检查您的isn服务器配置

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14226518

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档