Javascript jQuery AJAX make命令呈现404结果
我有以下jQuery JS:Javascript jQuery AJAX make命令呈现404结果,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我有以下jQuery JS: $.ajax({ type: "POST", url: url, async:false, data: {} }) .done(function( msg ) { console.log(msg); }).fail(function( jqXHR, textStatus ) { alert('Could not find file!'+textStatus); }); 如果页面存在,它将把页面html的内容检索到变量
$.ajax({
type: "POST",
url: url,
async:false,
data: {}
})
.done(function( msg ) {
console.log(msg);
}).fail(function( jqXHR, textStatus ) {
alert('Could not find file!'+textStatus);
});
如果页面存在,它将把页面html的内容检索到变量“msg”
但是如果它不存在。。。我有一个定制的404响应,如果用户试图通过AJAX检索文件以请求页面,我希望将其发送给用户。我的问题是.fail响应只给我jqXHR和textStatus,但没有msg,所以我无法显示404页面的内容
如果jQuery AJAX返回错误(例如404未找到),如何让它从服务器打印结果?
我查看了jQuery的文档,没有找到任何东西,非常感谢您的帮助 参数
jqXHR
是扩展本机XMLHttpRequest
对象的jQuery对象
此处的文档:
因为它本质上是一个XHR对象,所以您应该能够在该对象的属性responseText
中找到响应(如果存在)
jqXHR.responseText
跟踪得分
html
js
var请求=$.ajax({
类型:“POST”,
//url:url,
async:false,
数据:{}
});
request.done(函数(msg、textStatus、jqxhr){
如果(jqxhr.status==200){
$(“#results”).html(“状态:+jqxhr.status+”“+JSON.stringify(msg));
};
console.log(msg,jqxhr.status==200);
})
请求失败(函数(msg、textStatus、jqxhr){
if(jqxhr.status==404){
$(“#results”).html('找不到文件!'+textStatus);
};
});
jsfiddle试试
jqXHR.responseText
?你知道我认为你是对的,我不知道它在jqXHR对象中!把这个作为官方答案,这样我就可以给你信用:),因为它对我有用!是的,谢谢你给我看这些文件。它实际上是隐藏在那里的一个小细节。
<p id="results"></p>
var request = $.ajax({
type: "POST",
// url: url,
async:false,
data: {}
});
request.done(function( msg, textStatus, jqxhr ) {
if (jqxhr.status === 200) {
$("#results").html("status: "+ jqxhr.status+"<br\/><br\/>"+JSON.stringify(msg) );
};
console.log(msg, jqxhr.status === 200);
})
request.fail(function( msg, textStatus, jqxhr ) {
if (jqxhr.status === 404) {
$("#results").html('Could not find file!'+textStatus);
};
});