【问题标题】:jQuery $.post execute success instead of error if connection to server is lost如果与服务器的连接丢失,jQuery $.post 执行成功而不是错误
【发布时间】:2011-08-24 23:30:24
【问题描述】:

我正在使用此代码通过 jQuery 连接到服务器

var jqxhr = $.post('@Url.Action("../CheckMessage")',  { 'MessageId': MessageId }, 
    function (data, s) {
        alert ('This is executed on success only - data: ' + data + 's: ' + s);
    }
)
.error(function(XMLHttpRequest, textStatus, errorThrown) { alert("error"})

如果我在服务器中创建一个新异常.error 方法正确执行,但如果我关闭服务器,则success 方法被执行。 如何检查与服务器的连接是否丢失?

【问题讨论】:

  • 当你“关闭服务器”时你会得到什么服务器响应代码......我怀疑它不是 500

标签: jquery jquery-events


【解决方案1】:

Ajax 如果您没有在 ajax 设置中将 cache 指定为 false,则为后续请求调用缓存数据。试试这个cache:false 使用$.ajax

$.ajax({
     url:  '@Url.Action("../CheckMessage")',
     data: { 'MessageId': MessageId }, 
     cache: false,
     success: function (data, s) {
        alert ('This is executed on success only - data: ' + data + 's: ' + s);
     },
     error: function(XMLHttpRequest, textStatus, errorThrown) { 
       alert("error");
     }
});

.

【讨论】:

猜你喜欢
  • 2012-11-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-11-21
  • 2021-06-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多