我想要包括我的主页中的所有内容,除了一个js文件..

时间:2011-07-29 04:01:48

标签: javascript jquery grails

我有一个用例,我希望在我的页面list.gsp中包含我的main.gsp文件,这可以通过

轻松实现
<meta name="layout" content="main"/>

但问题是它有jQuery 1.6版本,但我想要一个名为jquery.js的文件的替代品,当我包括它以及主要布局时它还存在冲突并产生问题。 喜欢

<script type="text/javascript" src="${resource(dir: 'js/jquery', file: 'jquery.js')}"></script>

以上是行不通的,所以我想到的是手动区分要包含在list.gsp页面上的文件,还是有办法在main.gsp页面上包含除jQuery1.6之外的所有内容。 js文件??

我对任何其他建议持开放态度...... 提前致谢

2 个答案:

答案 0 :(得分:0)

一个脏方法可能是将脚本导入放入检查页面属性的if块中,并在list.gsp中设置该属性。

在list.gsp中:

<body fooProperty="1">

在main.gsp中:

<g:if test="${pageProperty(name:'body.fooProperty) ?: false}">
<%--includes you want for list.gsp here--%>
</g:if>
<g:else>
<%--normal script link -%>
</g:else>

在你获得的每一页加载上强制使用if / else,但还有很多其他方法可以做到。可能是设置一个隐藏的页面属性并编写一个加载器来覆盖javascript本身的1.6导入。

答案 1 :(得分:0)

输入你的main.gsp

${if(!params.jqueryVersion) params.jqueryVersion=''}
<script type="text/javascript" src="${resource(dir: 'js/jquery', file: 'jquery${params.jqueryVersion)}.js')}"></script>

并在列表控制器中返回

[myInstancesList:list, jqueryVersion:'-1.4.2']