JQuery在生产环境中不起作用

时间:2013-06-19 11:09:53

标签: jquery grails

大约3个月我学习了Grails,并且我独自开发了我的第一个完整应用程序。我将它部署在tomcat服务器(Tomcat6)上。为此我首先使用 grails war ,然后将 myApplic.war 放在tomcat的 webapps 目录中。应用程序已正确部署但在我的页面中,JQUery-UI的自动完成功能暂时不起作用(在开发中它运行良好)。我使用了JQuery和JQuery-UI插件(我在 BuildConfig.groovy 中添加了它们),当我显示我的页面的源代码时,我得到了类似的东西:

<script src="/CoiffureV2-0.1/static/plugins/jquery-1.8.3/js/jquery/jquery-1.8.3.min.js" type="text/javascript" ></script>
<link href="/CoiffureV2-0.1/static/plugins/jquery-ui-1.8.24/jquery-ui/themes/ui-lightness/jquery-ui-1.8.24.custom.css" type="text/css" rel="stylesheet" media="screen, projection" />
<script src="/CoiffureV2-0.1/static/plugins/jquery-ui-1.8.24/jquery-ui/js/jquery-ui-1.8.24.custom.min.js" type="text/javascript" ></script>
<link href="/CoiffureV2-0.1/static/plugins/twitter-bootstrap-2.3.2/less/bootstrap.less.css" type="text/css" media="screen, projection" rel="stylesheet" order="100" />

所以似乎JQuery被正确包含在内。我该怎么做才能解决我的问题?有什么想法吗?

提前致谢,

致以最诚挚的问候,

日塔

1 个答案:

答案 0 :(得分:4)

安装资源程序(如果它尚未存在于您的项目中)。然后,您有两个选择:

如果您的页面使用类似main.gsp

的布局

如果您的.gsp页面内部<meta name="layout" content="main"/>内有<head>,则会出现这种情况。

  1. 将以下内容添加到需要JQuery和JQuery UI的各个.gsp页面的<head>部分的开头:

    <r:require modules="jquery,jquery-ui"/>

  2. 然后,在</head> main.gsp之前添加:

    <r:layoutResources/>

  3. 然后在</body> main.gsp之前添加:

    <r:layoutResources/>

  4. 删除旧的<script><link>代码。

  5. 或者,如果您没有布局:

    1. 将此<head>放在需要JQuery的.gsp页面上:

      <r:require modules="jquery,jquery-ui"/>

      <r:layoutResources/>

    2. 并将此权利放在</body>

      之前

      <r:layoutResources/>

    3. 删除旧的<script><link>代码。

    4. 示例:http://pastebin.com/K0LU4sqG


      资源插件文档:http://grails.org/plugin/resources