繁体   English   中英

从控制台进行 Ajax 调用,得到错误 $.ajax is not a function()

[英]Making an Ajax call from the console, getting error $.ajax is not a function()

我正在尝试从控制台向本地服务器进行 ajax 调用,但出现错误:

VM4460:1 Uncaught TypeError: $.ajax is not a function(…)

这是我的代码

url = 'http://localhost:8080/testform?q=somethingnew1'
$.ajax({
  type: 'GET',
  url: url,
});

我做错了什么?

编辑 - 我意识到我做错了什么。 我在没有运行 jQuery 的页面上运行控制台。 当我切换到加载了 jQuery 的网站并运行它的命令时。 很抱歉造成混乱。

您必须添加JQuery以使$函数工作,检查控制台动态添加Jquery脚本并调用您的 ajax 函数。

(function(){
  var newscript = document.createElement('script');
     newscript.type = 'text/javascript';
     newscript.async = true;
     newscript.src = 'https://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js';
  (document.getElementsByTagName('head')[0]||document.getElementsByTagName('body')[0]).appendChild(newscript);
})();



url = 'http://localhost:8080/testform?q=somethingnew1'
$.ajax({
  type: 'GET',
  url: url,
});

将此代码复制并粘贴到控制台中并检查。

但是,您应该将 Jquery 添加到您正在处理的 HTML 页面中。

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>

您正在使用 JQuery 函数,因此您需要在页面中包含 JQuery(如果它还没有)。 在你的代码之前运行这个:

var x = document.createElement('script');
x.src = 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.0/jquery.js';
document.getElementsByTagName("head")[0].appendChild(x);

要在控制台中使用 jQuery,它需要已经包含在网页中(在 HTML 中通过 script 标签)。

如果您想在任何页面的控制台中使用 jQuery,请在控制台中使用下一个代码:

var jq = document.createElement('script');
jq.src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js";
document.getElementsByTagName('head')[0].appendChild(jq);
// ... give time for script to load, then type.
jQuery.noConflict();

最简单的方法是首先在开发控制台中作为一个整体执行这个脚本,然后它会让你开始使用 jquery:

var script = document.createElement('script');
script.src = "https://code.jquery.com/jquery 3.4.1.min.js";
document.getElementsByTagName('head')[0].appendChild(script);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM