javascript - Grails:&lt;script&gt; 与 <g:javascript>

标签 javascript grails

谁能解释一下这两个标签之间的区别以及 Grails 如何看待这两个标签之间的区别?我有一个带有点击和悬停效果的表格,当我使用导入 jquery 时似乎不会发生这种情况:

<g:javascript library="jquery" />

但是当我这样做时:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>

我想使用前面的标签,因为其他 Grails 标签(例如远程表单)依赖它来实现内置的 ajax 功能。

最佳答案

第一个是自定义 Grails 标记,并尝试通过该名称加载 Javascript 库。如果您使用资源插件,则调用 delegates用于加载库。查看 JavascriptTagLib.groovy 以了解自定义标记的作用。

后者只是常规的 HTML 脚本元素,并尝试在提供的位置获取脚本。

您遇到的问题可能稍微取决于您运行的 Grails 版本。看起来“jQuery”是 not a valid library在 Grails 1.3.x 中:

library (optional) - The name of the library to include. Either "prototype", "scriptaculous", "yahoo" or "dojo"

您可能需要确保您的路径正确,并且您要么拥有 Grails jQuery plugin已安装,或者您的 web-app/js 目录中有该库。 Grails 2.x 默认带有 jQ​​uery,但旧版本没有。

关于javascript - Grails:&lt;script&gt; 与 <g:javascript>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24243403/

相关文章:

javascript - 从 Controller 到外部 .js 文件的 Grails.pass 参数?

javascript - 这是 Xpath 评估中的 Chrome 错误吗

javascript - 在其他地方单击时菜单应该消失

jquery - Grails Datepicker Onchange事件

grails - 没有读取外部配置值

grails - 设置全局允许的最大上传文件大小

grails - Grails开发是否有一个好的IntelliJ配色方案?

javascript - 鼠标悬停 mp3、Wordpress 时声音会延迟播放

javascript - 访问从 javascript 函数 webdriver 动态生成的 href

javascript - jQuery 选项卡在 Internet Explorer 中不起作用,但在 Chrome 中起作用