【SpringMVC】【JavaScript】SpringMVC配置静态资源,可以访问js文件,但是js一直不生效


今日在学习SpringMVC对静态文件加载并操作,在配置好jQuery的Maven配置、Spring的xml配置后js依然不生效

jQuery的Maven配置

1 <dependency>
2       <groupId>org.webjarsgroupId>
3       <artifactId>jqueryartifactId>
4       <version>3.3.1-2version>
5 dependency>

Spring配置文件applicationContext.xml的部分代码如下所示

1 <mvc:default-servlet-handler/>
2 <mvc:annotation-driven>mvc:annotation-driven>

xxx.jsp代码如下所示

 1 <%@ page contentType="text/html;charset=UTF-8" language="java" %>
 2 <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
 3 <html>
 4 <head>
 5     <title>Titletitle>
 6     <script type="text/javascript" src="/webjars/jquery/3.3.1-2/jquery.min.js"/>
 7     <script type="text/javascript">
 8         $(function (){
 9             alert("hello jQuery")
10         })
11     script>
12 head>
13 <body>
14 body>
15 html>

在启动Tomcat后可以正常访问静态的js文件

但是访问xxx.jsp时,无法弹出“hello jQuery”的弹框(即js不生效)。在经过各种尝试:

  1. Ctrl+鼠标左键查看是否能定位文件,确保文件路径正确。
  2. Tomcat配置支持js调试。
  3. 网上查询资料。

最终参考了https://blog.csdn.net/u012759397/article/details/54376503 用了这篇文章的方法搞定了

问题原因:

将代码按照如下方式进行修改,重启即可。

1 <script type="text/javascript" src="/webjars/jquery/3.3.1-2/jquery.min.js"/>
2 写成
3 <script type="text/javascript" src="/webjars/jquery/3.3.1-2/jquery.min.js">script>
重新访问该网页,js生效。

本人没有学习过js,一直以为两个标签具有相同的功能。在这次排查过程中学习了。

相关