使用javascript获取整个html页面作为响应
我正在一个特定页面上发布一篇Ajax文章,如果一切正常,我可以得到一个ID作为响应,或者如果出现问题,我可以得到一个随机html页面和一个http 400作为响应。在这种情况下,我希望在一个新窗口中打开整个html页面。我尝试了以下方法,但不起作用-它将变量数据设置为[object object],而不是预期的html页面使用javascript获取整个html页面作为响应,javascript,jquery,ajax,Javascript,Jquery,Ajax,我正在一个特定页面上发布一篇Ajax文章,如果一切正常,我可以得到一个ID作为响应,或者如果出现问题,我可以得到一个随机html页面和一个http 400作为响应。在这种情况下,我希望在一个新窗口中打开整个html页面。我尝试了以下方法,但不起作用-它将变量数据设置为[object object],而不是预期的html页面 $.ajax({ type: "POST", url: postUrl, data:'message=' + message + '&' +
$.ajax({
type: "POST",
url: postUrl,
data:'message=' + message + '&' + 'title=' + title,
statusCode: {
400:function(data) {
var newWin = open('','windowName','height=300,width=300');
newWin.document.write(data);
},
},
success: function(json) {
alert("Post success");
},
error: function(jqXHR, textStatus, errorThrown) {
alert("Error connecting to page.");
}
});
指定
数据类型:“html”
并更改success函数变量。例如:
$.ajax({
type: "POST",
dataType: 'html',
url: postUrl,
data:'message=' + message + '&' + 'title=' + title,
statusCode: {
400:function(data) {
var newWin = open('','windowName','height=300,width=300');
newWin.document.write(data);
},
},
success: function(html) {
alert("Post success");
$("#myDiv").html(html);
},
error: function(jqXHR, textStatus, errorThrown) {
alert("Error connecting to page.");
}
});
我想我不知道你可以像那样为JQuery设置不同的状态码回调。那很有用!你的问题不是很清楚。是否希望重定向到错误回发中传递html的另一个页面?如果是,为什么?只需编写一个静态页面并调用它。我不明白你到底想实现什么,代码似乎也没有尝试你(我认为)解释的东西。谢谢你的回答,但这并没有真正帮助我。。。我希望新窗口包含html页面—我在接收http 400响应时打开的窗口。如果您希望像在新浏览器窗口中一样“打开新窗口”实例,请使用window.open()@AndréHegge html在JS
警报中将不会解析,看起来像…
。您可能需要使用一个对话框,例如jQuery UI中的对话框: