$ is not defined...js加载失败问题

问题说明:

        今天在做Web项目的一些代码效果测试的时候,用Tomcat跑的时候无法正常运行,并且在浏览器出现了如下的错误提示:
在这里插入图片描述

问题分析:

        根据提示,是 $ 符号没有定义,那么往代码上寻找源头,运用到的地方是要进行ajax异步请求的。

<script>
        $(function(){
            $("#btn").click(function () {
                $.ajax({
                    url:"user/testAjax",
                    contentType:"application/json;charset=UTF-8",
                    data:'{"username":"hehe","password":"123","age":"20"}',
                    dataType:"json",
                    type:"post",
                    success:function (data) {
                    }
                })
            });
        });

        结合错误提示,找到主要的错误是jQuery的jar没有加载进来,但是查看自己加载的代码是存在的。

<script src="js/jquery-3.3.1.min.js"></script>

疑惑就出来,然后找了解决方法,得到了解决加载js这一类问题的总结。

方法总结:

        1.加载方式没有写正确,我这是3.3.1版本的,根据自身的jquery版本来对号入座就行了。

<script src="js/jquery-3.3.1.min.js"></script>

        2.检查是否把jquery的文件放进WEB-INF目录下,因为我用的是Tomcat的, 是禁止对 WEB-INF 之下一切资源的访问的。所以最好放在与WEB-INF 目录同级。

        3.使用SpringMVC的时候是否存在静态资源被拦截了,比如在配置前端控制器的时候,将所有的资源一股脑都进行了拦截。

<!--配置前端控制器-->
  <servlet>
    <servlet-name>dispatcherServlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
      <param-name>contextConfigLocation</param-name>
      <param-value>classpath:springmvc.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>dispatcherServlet</servlet-name>
    <url-pattern>/</url-pattern>
  </servlet-mapping>

可以在springmvc.xml(Spring Config)文件中将一些静态资源设置为不拦截。

<mvc:resources location="/js/" mapping="/js/**"/>

        4.上述的三种方法都没有用的话,就要看看IDEA中的out或模块中的target目录里面是否存在对应的静态资源。若是没有,可以使用以下的解决方法。
    (1)在File下的Project Structure点击,选择Artifacts.
    (2)到Artifacts -> Output Layout下点击下面的图标。
在这里插入图片描述

    (3)接着下面的步骤。
在这里插入图片描述

在这里插入图片描述

    (4)重启Tomcat即可。

        上述是自己遇到该问题总结出来的解决方法,我也是在用最后一种方法才解决的,但是具体问题具体分析。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

是哈猿啊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值