首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >通过Firebug调试时未执行jQuery AJAX回调

通过Firebug调试时未执行jQuery AJAX回调
EN

Stack Overflow用户
提问于 2014-04-23 21:16:57
回答 1查看 839关注 0票数 1

这是一种经常观察到的行为。jQuery异步AJAX调用在不打开Firebug的情况下运行时完美无缺地工作。但是,当Firebug被打开并且我通过在代码的其他部分中放置一些断点进行调试时,AJAX回调事件不会触发。

我的假设是,由于我已经在代码的另一个不相关部分中一步一步地调试,所以AJAX响应回调事件正在被转义。这个假设对吗?如果是,我如何确保回调总是触发?如果没有,我做错了什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-24 01:40:58

我的假设是,由于我已经在代码的另一个不相关部分中一步一步地调试,所以ajax响应回调事件正在被转义。这个假设对吗?

是的,在Firebug 1.x中。尽管这是Firebug2.0中的固定 (在编写此答案时处于beta阶段)。

例如,请查看以下代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<script type="text/javascript">
function makeRequest()
{
    var xhr = new XMLHttpRequest();
    xhr.open("GET", "test.php");

    xhr.onreadystatechange = function()
    {
        if (xhr.readyState === XMLHttpRequest.DONE)
            console.log("Request finished");
    }

    xhr.send(null);
    debugger;
}
</script>
<button onclick="makeRequest()">Make request</button>

当您单击Make按钮时,您希望Request finished会被记录到控制台。在最多1.12.8的Firebug中,输出不会出现在控制台中,而在2.0中则会出现。这是因为火狐发布的Firebug2.0 适应新的调试器APIs解决了这个问题。

但是请注意,对onreadystatechange的异步调用不会被推迟。这意味着即使在debugger关键字下停止,它仍将被执行。因此,console.log("Request finished")的一个断点将击中而不是

这与Chrome、Opera和Internet的JavaScript引擎不同,在这些引擎中,异步函数的执行正在等待调试器继续执行脚本。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23260381

复制
相关文章
jquery ajax回调
.ajax({ url: "test.html", success: function(data){ $("#myDiv").html(data); }}); });
用户5760343
2019/08/21
1.3K0
jquery ajax回调
Ajax 的回调
页面上有两个button,以上js代码为button添加click事件。会输出什么样的结果呢?
用户7293182
2022/01/17
4.4K0
如何通过JNI传递对象执行回调
JNI的全称是java native interface,用来调用某些特定于系统平台或者硬件的操作,但是它只能调用c/c++的代码,若是其它语言代码,只能通过c/c++进行二次调用。
全栈程序员站长
2021/05/08
2.5K0
Ajax设置请求和接收响应、自己封装简易jQuery.Ajax、回调函数
这篇文章是承接前几篇博客的,是前几篇继续学习 包括Ajax学习与理解和简化版自己实现jQuery等 这篇文章只算是我的个人学习笔记,内容没有精心排版,一些错误请见谅.
代码之风
2018/10/31
2.6K0
flask ajax回调(flask 12)
jquery.ajax()函数参数: url: type:GET data datatype complete:请求完成时回调函数 success:请求成功 error:请求失败
用户5760343
2019/08/13
1.1K0
ajax请求成功但不执行success-function回调函数
今天在进行token返回测试的时候项目不完全还没有统一的返回格式,我用了String返回了token,
余生大大
2022/10/25
1.6K0
ajax请求成功但不执行success-function回调函数
如何取消ajax请求的回调
我们在开发过程中有时候会碰到这样的需求,连续发送多个ajax请求,请求个数大于等于2,后面的ajax请求发送时,如果前面的ajax请求还没有返回,就取消前面ajax请求回调的执行。
挥刀北上
2020/07/03
4.4K0
ajax中回调的几个坑
在前端开发中,经常要用ajax去拿后台接口返回的数据,总结几个ajax的回调的常见问题,供大家参考爬坑。
全栈程序员站长
2022/07/21
7390
如何通过jQuery发送AJAX?
contentType:发生请求时的内容编码类型(application/x-www-form-urlencoded)
切图仔
2022/09/08
1.2K0
回调、使用Promise封装ajax()、Promise入门
Callback 很常见 $button.on('click', function(){}) click后面的 function 就是一个回调,因为「我」没有调用过这个函数,是 jQuery 在用户点击 button 时调用的(当用户点击之后,这个函数才执行,现在我只是传了一个参数,这个参数是一个点击后要执行的函数)。
代码之风
2018/10/31
3.4K0
AJAX的四种回调函数
jQuery.ajax()提供的 jQuery.ajax() 的 callback 函式其中有 4 個 callbacks:
JavaEdge
2021/02/22
1.2K0
jQuery ajax - ajax() 方法jQuery ajax - ajax() 方法
http://www.w3school.com.cn/jquery/ajax_ajax.asp
一个会写诗的程序员
2018/08/17
14.5K0
调试工具-Firebug学习资料
2016-05-0418:42:36 发表评论 154℃热度 Firebug 这里是内容 它是WEB调试工具之一,是网页浏览器 Firefox 下的一款开发类插件。它集HTML查看和编辑、JS控制台、网络状况监视器于一体,是开发JavaScript、CSS、HTML和Ajax的得力助手。掌握Firebug的使用,可从各个不同的角度剖析Web页面内部的细节,给Web开发带来极大的便利。 由于最近在观看各大博客,企业等的的网站,学习他们代码里面的精髓,顺便看看源代码,有时候自己也要调试网页,火狐的Firebu
timhbw
2018/05/03
6950
调试工具-Firebug学习资料
useMemo依赖没变,回调还会反复执行?
经常使用React的同学都知道,有些hook被设计为:「依赖项数组 + 回调」的形式,比如:
公众号@魔术师卡颂
2023/08/30
3970
useMemo依赖没变,回调还会反复执行?
Ajax处理success回调函数返回的json数据。
站长最近在项目中用调用一个分类的子数据,由于表单要填写的数据较多,为了实现无刷新的选择操作,就使用ajax做了异步查询。查询的结果因为是多条数据,一直以来动用ajax查的都是单数据,还第一次使用多数据,惭愧。TP5中查询的结果已经是一个数组对象,如果直接return回去,那么success函数获取的是一个对象,对象操作的结果还是要再一次转换成数组,讲起来都觉得麻烦,别说操作了。最好是直接返回字符串或者json。
世纪访客
2018/08/02
3.5K0
Ajax处理success回调函数返回的json数据。
layer执行父窗口ajax方法,layer 弹出层 回调函数调用 弹出层页面 函数
1、项目中用到layer 弹出层,定义一个公用的窗口,问题来了窗口弹出来了,如何保存页面上的数据呢?疯狂百度之后,有了结果,赶紧记下。
全栈程序员站长
2022/09/13
2.3K0
jsonp跨域实现的几种方式[js跨域原理]
项目中常常用到搜索,特别是导航类的网站。自己做关键字搜索不太现实,直接调用百度的是最好的选择。 使用jquery.ajax的jsonp方法可以异域调用到百度的js并拿到返回值,当然$.getScript也可以实现跨域调用js。
Java架构师必看
2022/02/27
3.4K0
jsonp跨域实现的几种方式[js跨域原理]
jQuery通过Ajax实现请求后台接口数据
<script> $(function () { $.ajax({ url: " https://xx.php", type: "post", data: data, dataType: 'json', success: (res) => { }, error: (err) => { }
明知山
2020/09/03
1.5K0
通过Ajax的方式执行GP服务
在上一篇文章(Arcgis for js之GP实现缓冲区计算)介绍了Arcgis for js实现缓冲区计算,但是很多时候,我们不会用Arcgis的东西却想调用GP来实现对应的功能,怎么做呢,没错,本文将讲述如何通过ajax的方式去执行GP并返回结果。
牛老师讲GIS
2018/10/23
6900
通过Ajax的方式执行GP服务
jquery ajax步骤,jquery ajax(ajax请求的五个步骤jQuery)
AJAX是与服务器交流数据的艺术,它在不重载全部页面的情况下,完成了对部分网页的更新。
全栈程序员站长
2022/08/29
1.7K0
jquery ajax步骤,jquery ajax(ajax请求的五个步骤jQuery)

相似问题

rails/jquery/ajax:未执行完成回调

10

未执行JQuery ajax post回调函数

11

未执行jQuery.ajax成功回调函数

63

jQuery回调函数未执行

11

JQuery getJSON回调未执行

12
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文