0

我正在尝试将文件上传到服务器。我在我的jsp中嵌入了一个iframe。此 iframe 对 servlet 保存一个操作,该 servlet 将文件保存在服务器上。在处理文件时,它会通过response.getWriter().

private String getRespHTML(boolean isUploadSuccess, String theReturnMsg){
        StringBuilder theHTMLBuf = new StringBuilder();
        theHTMLBuf.append("<html><head>");
        theHTMLBuf.append("<SCRIPT LANGUAGE=\"JavaScript\">");
        if(isUploadSuccess){
            theHTMLBuf.append("parent.uploadStatus(true, '"+ theReturnMsg + "');");
        }
        else{
            theHTMLBuf.append("parent.uploadStatus(false, 'Upload failed: " + theReturnMsg + "');");
        }
        theHTMLBuf.append("</SCRIPT>");
        theHTMLBuf.append("</head><body></body></html>");

        return theHTMLBuf.toString();

 }

现在这个parent.uploadStatus(驻留在 JSP 中包含的脚本文件中的 JS 函数)在我的本地服务器上完美运行。但是当我托管它时,上传会很好,但不会调用这个脚本。这里所有的页面都来自同一个域,而且它甚至都不起作用window.parent.uploadStatus

感谢你的帮助!

4

1 回答 1

0

好吧,我的坏。我为我的 servlet 响应添加了以下行,它起作用了。

response.setContentType("text/html");
于 2013-08-09T14:35:37.230 回答