在JSPX文件中包含JS文件(JQuery)

Including JS files (JQuery) in JSPX files

本文关键字:文件 JQuery JS 包含 JSPX      更新时间:2023-09-26

我正在Eclipse中创建一个动态web项目(几乎是从零开始),我创建了一个JSPX文件,我把

<head>...
<script type="text/javascript" src="route/to/scripts/jquery.js"></script>
<script type="text/javascript" src="route/to/scripts/jquery.ui.js"></script>
<script type="text/javascript" src="route/to/scripts/something.js"></script>
</head>

我打算使用Jquery UI可排序,我发现使用JSPX,只有第一个脚本加载在Firefox和IE(而在opera中它的工作…)。如果我使用纯JSP,无论是HTML还是XHTML,它都会加载所有的JS文件。

在不使用

的情况下,是否有办法成功地包含所有JS文件?
<script>
<jsp:include ...>
</script>

我必须知道?(因为它将脚本加载到最终的(X)HTML中)

编辑:只是在想…为什么Opera读取xhtml正确,而FF和IE未能读取<script>标签?会不会是臭虫?

JSPX有一个奇怪的行为,它自动折叠没有正文的标签。因此

<script type="text/javascript" src="route/to/scripts/jquery.js"></script>
<script type="text/javascript" src="route/to/scripts/jquery.ui.js"></script>
<script type="text/javascript" src="route/to/scripts/something.js"></script>

将在浏览器中显示为

<script type="text/javascript" src="route/to/scripts/jquery.js" />
<script type="text/javascript" src="route/to/scripts/jquery.ui.js" />
<script type="text/javascript" src="route/to/scripts/something.js" />

是无效的<script>语法(在浏览器中右键单击页面并执行查看源自己查看)。浏览器行为未确定。

你可以通过在 标签之间放置一个<jsp:text />来解决这个问题。
<script type="text/javascript" src="route/to/scripts/jquery.js"><jsp:text /></script>
<script type="text/javascript" src="route/to/scripts/jquery.ui.js"><jsp:text /></script>
<script type="text/javascript" src="route/to/scripts/something.js"><jsp:text /></script>