我在Grails 2.5.x中使用资产管道。我把包含图像的img文件夹放到资产文件夹中。
但是在js文件中,我无法在图像路径中使用<assets:image
标记。
例如:
controlHTML: '<img src="../img/up.png" style="width:40px; height:40px" />'
我可以到达路径,但在web inspect元素中,路径不正确:'localhost:9090/CardReg/img/up.png'
我放
时出错controlHTML: '<img src="<asset:image src='../img/up.png'/>" style="width:40px; height:40px" />'
有什么想法吗?
任何解决方案将不胜感激。谢谢你。
答案 0 :(得分:0)
Grails标记在.js上下文中不可用。仅限于.gsp
我建议把
<asset:script>
var contextPath = "${request.contextPath}";
</asset:script>
在您的主gsp布局文件中,然后从您的js中,您可以通过
引用图像var myImage = contextPath + "/assets/myImage.jpg"
我还建议练习智能javascript,因此您可能希望将声明的任何布局变量放入对象中以充当命名空间。
还要确保脚本块是导入的第一个脚本。