jQuery可以为失败的AJAX调用提供后备功能吗?这是我的尝试:
function update() {
var requestOK = false;
$.getJSON(url, function(){
alert('request successful');
requestOK = true;
});
if (!requestOK) {
alert('request failed');
}
}
不幸的是,即使调用了$
.getJSON()方法的回调函数,在回调函数有机会设置requestOK变量之前,我也会收到消息“请求失败”。我认为这是因为代码并行运行。有没有办法处理这种情况?我考虑过链接或某种方式等待AJAX请求,包括其回调函数。但是如何?有谁知道这是怎么做到的吗?
您将需要使用较低级别的$
.ajax
调用或ajaxError函数。这是$
.ajax方法的用法:
function update() {
$.ajax({
type: 'GET',
dataType: 'json',
url: url,
timeout: 5000,
success: function(data, textStatus ){
alert('request successful');
},
fail: function(xhr, textStatus, errorThrown){
alert('request failed');
}
});
}
编辑 我将a添加timeout
到$.ajax
通话中并将其设置为五秒钟。
问题内容: IE中的以下AJAX调用失败。 错误函数返回 没有向服务器发出请求,因此我认为JSON没有问题。 已修复,请参阅#1351389 问题答案: 固定,我将content-type从更改为just plain 。 我讨厌IE :) 另外,为了避免IE超级缓存,请尝试以下操作: 这样,每个请求都是IE获得:D的新网址
类项目: hbm文件: 方法如下:
问题内容: 我已经制作了一个简单的聊天应用程序,它使用jquery使用长轮询方法, 这应该发生:页面加载后,发生对listen.php的无限请求,并且当用户发送消息时,代码通过send.php将消息发送到数据库。 问题是,使用萤火虫,我发现在listen.php请求之后执行的send.php请求仍然悬而未决。表示发送消息的请求仍处于待处理状态。 问题答案: 问题是由于 会话锁定 ; 和文件两者都使
问题内容: 我正在制作一个Java Servlet页面,该页面检查域名列表,并通过jquery ajax请求检查每个名称。它的工作正常,除非结果被无序附加到DOM。什么是按请求的顺序处理请求的最佳方法,但是又像长时间轮询一样异步进行。我是javascript新手。 这是我用于请求的代码: 我当时正在考虑向Java Servlet发送一个序列号,该序列号将通过JSON返回,但是我想知道是否有更简单的
问题内容: 我是使用jQuery处理AJAX的新手,并且已经编写了一个基本脚本来掌握基础知识。当前,我正在将AJAX请求发布到同一文件,并且我希望基于该AJAX调用的结果进行一些其他处理。 这是我的代码: 这是我提交数字“ 2”时得到的答复: 显然,我只对接收和使用数字“ 4”感兴趣,因此我的问题是: 确切指定要返回的数据的最佳方法是什么? 我有一些想法: 将我所有的HTML都包装在if语句中(即
问题内容: 最新版本的Chrome是否已停止同步Ajax调用?进行同步Ajax调用时出现错误。我们更新到最新的Chrome版本-73.0.3683.103后,该问题突然出现。目前,同步调用在Firefox和IE上可以正常工作。我们正在错误以下 消息:“无法在’XMLHttpRequest’上执行’发送’:无法加载’Path …’:页面关闭时的同步XHR”。名称:“ NetworkError” 有人