无论我做什么,我都会得到同样的错误“$.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)
我甚至试图在http://projects.jga.me/jquery-builder/
使用jQuery Builder将Ajax库与jQuery库完全分开。第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。确认我正在使用文档
请参阅#1 alert('pre test success');
5。在Ajax脚本之前确认包含jQuery库。
检查
<小时/> 似乎无论我什么都不解决这个问题。值得一提的是,我在XAMP和DigitalOcean服务器上运行它并获得相同的结果。
有什么建议吗?
答案 0 :(得分:1)
您需要确保在浏览器调用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>
答案 1 :(得分:0)
也许您正在使用其他库,这些库可能会使用$ sign?
答案 2 :(得分:0)
感谢@Piki
,我发现了这个问题当我浏览我的js库寻找潜在的冲突时,我发现了一个链接到&#34; jQuery Slim&#34;埋在我正在使用的Bootstrap模板底部的一些其他脚本链接中,这些链接覆盖了我的其他jQuery文件。
我的解决方案是......
删除我不知道的页面底部的jQuery Slim版本链接。
这是另一个导致冲突的jQuery版本。