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

发布于 2024-12-18 09:02:10 字数 841 浏览 2 评论 0原文

我正在 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 sortable,我发现使用 JSPX,只有第一个脚本在 Firefox 和 IE 中加载(而在 Opera 中它可以工作......)。如果我使用纯 JSP,无论是 HTML 还是 XHTML,它都会加载所有 JS 文件。

有没有什么方法可以成功包含所有 JS 文件而不使用

<script>
<jsp:include ...>
</script>

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

编辑:只是想...为什么Opera正确读取xhtml,而FF和IE无法读取

I'm creating a dynamic web project in Eclipse (almost from scratch) and I created a JSPX file where I put

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

I intend to use Jquery UI sortable and I found out that using JSPX, only the first script loads in Firefox and IE (while in opera it works...). If I use plain JSP, whether HTML of XHTML, it loads all the JS files.

Is there any way to include all the JS files successfully without using

<script>
<jsp:include ...>
</script>

that I must be aware of? (because this one loads the script INTO the final (X)HTML)

EDIT: Just thinking... why does Opera read the xhtml right while FF and IE failed at reading the <script> tags? Could it be a bug?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

橘虞初梦 2024-12-25 09:02:10

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

JSPX has the quirky behaviour that it auto-collapses tags without body. So effectively

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

will end up in browser as

<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" />

which is invalid <script> syntax (rightclick page in browser and do View Source to see it yourself). The browser behaviour is undetermined.

You can workaround this by putting a <jsp:text /> between the tags

<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>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文