谁能解释一下这两个标签之间的区别以及 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 默认带有 jQuery,但旧版本没有。
关于javascript - Grails:<script> 与 <g:javascript>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24243403/