Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/355.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代码作为响应_Javascript_Java_Jsp_Response_Outputstream - Fatal编程技术网

如何使用文件字节编写javascript代码作为响应

如何使用文件字节编写javascript代码作为响应,javascript,java,jsp,response,outputstream,Javascript,Java,Jsp,Response,Outputstream,我编写了下载文件的代码,该文件在加载页面时自动运行。我想在页面加载时在页面中执行一些javascript函数,例如在窗口加载函数中 下面是我写响应文件字节的代码,以及如何写响应javascript try{ data = exporter.getData(exportRoot); if(data==null) { throw new Exception("Unable to Generate the Presentation file.");

我编写了下载文件的代码,该文件在加载页面时自动运行。我想在页面加载时在页面中执行一些javascript函数,例如在窗口加载函数中

下面是我写响应文件字节的代码,以及如何写响应javascript

  try{
    data = exporter.getData(exportRoot);

    if(data==null)
    {
        throw new Exception("Unable to Generate the Presentation file.");
    }
    response.setContentType("application/octet-stream");
    response.setHeader("Content-Disposition", "attachment;filename=smartArt_presentation.pptx");
    response.setHeader("Cache-Control", "public");

    str.write(data);
    str.flush();
}
catch(Exception e)
{
    String msg = "Error : "+ e.getMessage() ;
    str.write(msg.getBytes());
    str.flush();

}

您可以将其组装为如下字符串:str.writejavascript:alert'hello'

调用窗口在ajax调用后关闭,如果ajax调用返回成功。 大概是这样的:

$.ajax({
        type: 'POST',
        url: '.....'
        dataType: 'json',
        success: function() {
           ..............
           window.close();              
        }
    });
如果需要,也可以在文档加载中调用ajax函数:

$(document).ready(function() {
 $.ajax({
         ......
         ......
        });
});

没有得到你真正想要的。请简单说明您想要的目标。实际上,我想在使用响应将文件发送给用户时关闭浏览器窗口。您可以使用javascript从页面关闭浏览器窗口。或者您想从控制器发送关闭命令。如果是第一个,那么请查看我的回答,如果是第二个,那么请按照天空的回答。