我有一个应用程序,其中有以 Word/PDF 格式导出文档的选项。我们进行表单提交以发布 HTML 并将其发送到服务器进行转换。在后端,servlet 在设置 contentType 后将其写回客户端。信息栏仅在第一次下载时出现。
我不能建议用户降低他们的浏览器安全级别。因此我需要一个解决方案来绕过这个警报。我看到 Google Docs 已经处理了这个问题。有谁知道需要做什么?
我有一个应用程序,其中有以 Word/PDF 格式导出文档的选项。我们进行表单提交以发布 HTML 并将其发送到服务器进行转换。在后端,servlet 在设置 contentType 后将其写回客户端。信息栏仅在第一次下载时出现。
我不能建议用户降低他们的浏览器安全级别。因此我需要一个解决方案来绕过这个警报。我看到 Google Docs 已经处理了这个问题。有谁知道需要做什么?
我正在使用以下 JQuery 代码:
$.download = function(url, data, method){
//url and data options required
if( url && data ){
//data can be string of parameters or array/object
data = typeof data == 'string' ? data : $.param(data);
//split params into form inputs
var inputs = '';
$.each(data.split('&'), function(){
var pair = this.split('=');
inputs+='<input type="hidden" name="'+ pair[0] +'" value="'+ pair[1] +'" />';
});
//send request
$('<form action="'+ url +'" method="'+ (method||'post') +'">'+inputs+'</form>')
.appendTo('body').submit().remove();
};
};
每次应该启动下载时,我都会开火
$.download(options);
服务器响应带有正确的内容类型标头(例如 Word)。
也许您忘记了从 DOM 中删除提交的表单?