未捕获的 TypeError: $.ajax 不是 jQuery 中的函数

-1 投票
2 回答
45 浏览
提问于 2025-04-12 18:20

我在我的网页应用中遇到了一个问题,跟jQuery的$.ajax函数有关。当我尝试使用$.ajax发起一个AJAX请求时,浏览器控制台显示了一个错误:“Uncaught TypeError: $.ajax is not a function”。

这是相关的代码片段:

$.ajax({
    url: "/add-to-wishlist",
    data: {"id": product_id},
    dataType: "json",
    beforeSend: function(){
        console.log("Adding to wishlist");
    },
    success: function(response){
        this_val.html("");
        if (response.bool === true) {
            console.log("Added to wishlist");
        }
    },
    error: function(xhr, errmsg, err){
        console.log(xhr.status + ": " + xhr.responseText);
        console.log(errmsg);
    }
});

我已经确保在我的HTML文件中正确引入了jQuery,并且是在引入我的JavaScript文件之前。不过,我还是遇到了这个错误。

有没有人能帮我理解一下为什么会出现这个错误,以及如何解决它?任何建议或见解都非常感谢。谢谢!

2 个回答

0

听起来你的脚本运行时,jQuery没有正确初始化,或者你使用的是一个精简版的jQuery,这个版本不包含$.ajax这个功能。你需要仔细检查一下你引入的jQuery版本,确保不是精简版。同时,要确保在你的脚本尝试使用$.ajax之前,jQuery已经加载完成。你可以在进行AJAX调用之前,在控制台里打印jQuery或者$来验证。如果它显示为未定义,那就说明你需要重新检查一下html中脚本标签的顺序。

-3

看起来你的网页项目里没有使用jQuery。这里有两种常见的方法可以添加jQuery:

  1. 从官方网站下载:你可以直接从jQuery的官方网站下载jQuery,然后把它放到你的项目里。你可以在这里下载:点击这里

  2. 使用CDN(内容分发网络):另外,你也可以通过CDN链接直接在你的HTML文件中引入jQuery。下面是一个从Google的CDN引入jQuery的例子:

    <script src="https://code.jquery.com/jquery-3.1.1.min.js"> </script>

撰写回答