检查401,404,500,其他jquery / javascript

时间:2011-10-23 07:58:00

标签: javascript jquery directory

  

可能重复:
  jQuery $.get or $.post to catch page load error (eg. 404)

也许我认为这是错误的。但无论如何这里仍然存在。目前在jQuery的帮助下,我正在运行$ .post()。

但是我发帖是根据目录获取内容。问题是信息是动态设置的。因此,如果事实证明我在某种意义上查询文件/文件夹并且它不存在我得到404,401,500这样的错误。基本上简单地告诉我它不存在。也就是说,我如何检查它,或者当它发生时捕获它我可以通过javascript通过可能是对话框或其他东西抛出自定义错误。

甚至可能吗?请注意,ajax / post目前没有绑定到服务器端脚本,如果最终是,它将与rails脚本上的ruby绑定。

1 个答案:

答案 0 :(得分:4)

您可以在发布调用后立即添加.error(function(){...}),以确定如果您的AJAX失败,如何处理,以及返回的错误代码。

代码:

$.post('/path/to/script/',function(){alert('success');})
  .error(function() { alert("error"); });

说明:

  

错误(jqXHR,textStatus,errorThrown)功能

     

请求失败时要调用的函数。该函数接收三个参数:jqXHR(在jQuery 1.4.x,XMLHttpRequest中)对象,描述发生的错误类型的字符串和可选的异常对象(如果发生)。第二个参数的可能值(除了null)是“timeout”,“error”,“abort”和“parsererror”。发生HTTP错误时,errorThrown会收到HTTP状态的文本部分,例如“未找到”或“内部服务器错误”。

     

http://api.jquery.com/jQuery.ajax/