Javascript 除了一个js文件外,我想包括主页上的所有内容。。

Javascript 除了一个js文件外,我想包括主页上的所有内容。。,javascript,jquery,grails,Javascript,Jquery,Grails,我有一个用例,我想在我的page list.gsp中包含我的main.gsp文件,这很容易通过 <meta name="layout" content="main"/> 但问题是它有jQuery 1.6版本,但我想要一个名为jQuery.js和i的替代文件,当我将它包括在主布局之外时,它会发生冲突并产生问题。。 像 上面的方法不起作用,所以我想要么手动区分要包含在我的list.gsp页面上的文件,要么有办法包含main.gsp页面上除此jQuery1.6.js文件之外的所有

我有一个用例,我想在我的page list.gsp中包含我的main.gsp文件,这很容易通过

<meta name="layout" content="main"/>

但问题是它有jQuery 1.6版本,但我想要一个名为jQuery.js和i的替代文件,当我将它包括在主布局之外时,它会发生冲突并产生问题。。 像


上面的方法不起作用,所以我想要么手动区分要包含在我的list.gsp页面上的文件,要么有办法包含main.gsp页面上除此jQuery1.6.js文件之外的所有文件

我愿意接受任何其他建议。。
提前感谢

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

在list.gsp中:

<body fooProperty="1">

总而言之,普惠制:

<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导入

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