Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/453.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 即使POST成功,jQueryAjax也永远不会结束_Javascript_Jquery_Html_Ajax_Jsp - Fatal编程技术网

Javascript 即使POST成功,jQueryAjax也永远不会结束

Javascript 即使POST成功,jQueryAjax也永远不会结束,javascript,jquery,html,ajax,jsp,Javascript,Jquery,Html,Ajax,Jsp,我试图使用AJAX获取JSP的内容,用一些附加数据(内容对象)填充页面,然后在新窗口上加载我得到的完整页面: JavaScript: var request = $.ajax({ type: 'POST', url: ctx + "/model/nbReport.jsp", dataType: 'html', data: {content: content} }); request.done(function(data) { var reportWindow = window.open

我试图使用AJAX获取JSP的内容,用一些附加数据(
内容
对象)填充页面,然后在新窗口上加载我得到的完整页面:

JavaScript:

var request = $.ajax({
 type: 'POST',
 url: ctx + "/model/nbReport.jsp",
 dataType: 'html',
 data: {content: content}
});
request.done(function(data) {
 var reportWindow = window.open();
 $(reportWindow.document).html(data);
});
这是JSP:

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<html>
     <head>
    <style type="text/css" media="all">
        @page {
            size: A4 portrait; /* can use also 'landscape' for orientation */
            margin-top: 3.0in;
            margin-bottom: 1.0in;

            @bottom-center {
                content: element(footer);
            }

            @top-center {
                content: element(header);
            }
        }

        #page-header {
            display: block;
            position: running(header);
        }

        #page-footer {
            display: block;
            position: running(footer);
        }
    </style>
    </head>
<body>
    <div id="page-header">

    </div>

    <div id="page-footer">

    </div>
    <div id="page-content">
        ${param.content }
    </div>
</body>
</html>

@页面{
尺寸:A4纵向;/*也可以使用“横向”进行定向*/
边缘顶部:3.0英寸;
边缘底部:1.0英寸;
@底部中心{
内容:元素(页脚);
}
@上中锋{
内容:元素(标题);
}
}
#页眉{
显示:块;
位置:运行(收割台);
}
#页脚{
显示:块;
位置:运行(页脚);
}
${param.content}
.done()
回调永远不会执行。我还尝试实现了一个
.always()
,但它没有运行。实际上,如果我检查
request
对象,它的
readyState
=1,这意味着post从未完成。但实际上,在firebug控制台上检查这篇文章似乎是成功的。 帖子的响应是JSP中包含的HTML。日志中未报告任何错误。 有人知道我怎么解决这个问题吗?
我的目标是获取页面“/model/nbReport.jsp”,用
内容中包含的数据填充它(这只是一个动态创建的HTML标记列表),然后在新窗口中打开填充的页面。

您是否尝试了
失败()
并查看是否有任何错误。这是第二个adeneo的建议。您的回调中可能有一个JavaScript错误,这会给事情带来麻烦。@adeneo奇怪的是,始终()没有被激发,所以我想这两个fail()都不会成为一个问题:您的服务器正在运行吗?Ajax调用是否超时?