使用javascript获取整个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文章,如果一切正常,我可以得到一个ID作为响应,或者如果出现问题,我可以得到一个随机html页面和一个http 400作为响应。在这种情况下,我希望在一个新窗口中打开整个html页面。我尝试了以下方法,但不起作用-它将变量数据设置为[object object],而不是预期的html页面

$.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中的对话框: