Ajax 不起作用 - 继续得到 $.ajax 不是函数错误



无论我做什么,我都会收到相同的错误"$.ajax不是函数",我似乎无法弄清楚。

我已经为此工作了一段时间,这就是我尝试过的。

我的调试/故障排除步骤-(我正在列出这一点,以便它将成为帮助轻松解决更多常见问题的资源。

1. 安装了 jQuery。

已运行以下测试:

$(document).ready(function() {
console.log($.ajax);
alert('pre test success');
if(window.jQuery) { 
alert('post test success');
} else {
alert('test fail Jquery did not load!');
}
});

2. 测试了当前和以前版本的 jQuery(我没有使用苗条版本(。

(注意:看起来苗条版本不包括Ajax(

我甚至尝试使用jQuery Builder将Ajax库与jQuery库完全分开 http://projects.jga.me/jquery-builder/

3. 测试了许多不同的语法,以帮助消除语法错误。

例如,从对堆栈溢出的类似问题的回答:

$.ajax({
type: 'POST',
url: url,
data: myData,
dataType: 'json',
success: callback
});

即使是这个直接从jquery主页:

$.ajax({
url: "/api/getWeather",
data: {
zipcode: 97201
},
success: function( result ) {
$( "#weather-temp" ).html( "<strong>" + result + "</strong> degrees");
}
});

我也试图将$.ajax更改为jQuery.ajax等,但没有运气。

4. 确认我正在使用文档就绪

查看 #1alert('pre test success');的代码

5. 在使用 Ajax 编写脚本之前确认包含 jQuery 库。

检查


似乎无论我做什么都不能解决这个问题。为了它的价值,我在XAMP和DigitalOcean服务器上运行它并获得相同的结果。

有什么建议吗?

你需要确保在浏览器调用 ajax 代码之前加载你的 jquery 插件...... 还要确保下载最新的jquery插件并测试其他jquery功能,以确保Jquery在代码中是否正常工作。

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("button").click(function(){
$.ajax({url: "demoTest.txt", success: function(result){
$("#div").html(result);
}});
});
});
</script>
<div id="div"><h2>Let AJAX Change this Text with another another</h2></div>

也许您是否正在使用其他库,这可能会弄乱$ 符号的使用?

看看那里 : 避免与其他库冲突 (jQuery(

多亏了@Piki我发现了这个问题

当我在我的js库中寻找潜在的冲突时,我发现一个指向"jQuery Slim"的链接隐藏在我正在使用的Bootstrap模板底部的其他一些脚本链接中,该脚本链接覆盖了我的其他jQuery文件。

我的解决方案是....

删除我页面底部的jQuery Slim版本链接,我不知道它的存在。

这是导致冲突的另一个版本的jQuery。

最新更新