<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>上传</title>
<#include "/WEB-INF/upload/add_head.ftl"/>
<style type="text/css">
/*demo page css*/
body{ font: 62.5% "Trebuchet MS", sans-serif; margin: 50px;}
.demoHeaders { margin-top: 2em; }
#dialog_link {padding: .4em 1em .4em 20px;text-decoration: none;position: relative;}
#dialog_link span.ui-icon {margin: 0 5px 0 0;position: absolute;left: .2em;top: 50%;margin-top: -8px;}
ul#icons {margin: 0; padding: 0;}
ul#icons li {margin: 2px; position: relative; padding: 4px 0; cursor: pointer; float: left; list-style: none;}
ul#icons span.ui-icon {float: left; margin: 0 4px;}
</style>
<script type="text/javascript">
// Dialog
$(function(){
$('#dialog').dialog({
autoOpen: false,
width: 600,
modal:true,
bgiframe: true,
open:function(){
$("#dialog").load("http://localhost:8080/app/admin/upload/Com_checkFile.do");
},
buttons: {
"Ok": function() {
$(this).dialog("close");
},
"Cancel": function() {
$(this).dialog("close");
}
}
});
// Dialog Link
$('#dialog_link').click(function(){
$('#dialog').dialog('open');
return false;
});
});
var swfu;
window.onload = function() {
var settings = {
flash_url : "${base}/swfupload_res/swfupload/swfupload.swf",
upload_url: "Com_save.do",
post_params: {"jsessionid" : "sessionid"},
file_types : "*.*",
file_types_description : "All Files",
file_upload_limit : 100,
file_queue_limit : 0,
file_post_name:"attachment",//加了这个,在webwork的action中要用
custom_settings : {
progressTarget : "fsUploadProgress",
cancelButtonId : "btnCancel"
},
debug: false,
// Button settings
button_image_url: "${base}/swfupload_res/images/TestImageNoText_65x29.png",
button_width: "65",
button_height: "29",
button_placeholder_id: "spanButtonPlaceHolder",
button_text: '<span class="theFont">上传</span>',
button_text_style: ".theFont { font-size: 16; }",
button_text_left_padding: 12,
button_text_top_padding: 3,
// The event handler functions are defined in handlers.js
file_queued_handler : fileQueued,
file_queue_error_handler : fileQueueError,
file_dialog_complete_handler : fileDialogComplete,
upload_start_handler : uploadStart2,
upload_progress_handler : uploadProgress,
upload_error_handler : uploadError,
upload_success_handler : uploadSuccess,
upload_complete_handler : uploadComplete,
queue_complete_handler : queueComplete // Queue plugin event
};
swfu = new SWFUpload(settings);
};
function uploadStart2(file) {
//服务器检查开始
$.ajaxSetup({
async: false
});
var status;
$.post('Com_checkFile.do', {
fileName:file.name,
fileSize:file.size,
floderPath:"/user/floder"
},
function(data) {
status=data;
}
);
if(status=="0")
{
//正常上传
}
else if(status=="1")//文件同名
{
if(!confirm("该目录下已有同名文件,是否覆盖?"))
{
this.cancelUpload();
return false;
}
}
else if(status=="2")//磁盘已满
{
window.alert("您的磁盘空间已满");
this.cancelUpload();
return false;
}
else
{
window.alert("Server(IO) Exception");
this.cancelUpload();
return false;
}
//服务器检查结束
try {
/* I don't want to do any file validation or anything, I'll just update the UI and
return true to indicate that the upload should start.
It's important to update the UI here because in Linux no uploadProgress events are called. The best
we can do is say we are uploading.
*/
var progress = new FileProgress(file, this.customSettings.progressTarget);
progress.setStatus("上传中...");
progress.toggleCancel(true, this);
}
catch (ex) {}
return true;
}
</script>
</head>
<body>
${session.id}
<div id="content">
<form id="form1" action="Com_add.do" method="post"
enctype="multipart/form-data">
<div class="fieldset flash" id="fsUploadProgress">
<span class="legend">上传队列</span>
</div>
<div id="divStatus">
0 个文件上传
</div>
<div>
<span id="spanButtonPlaceHolder"></span>
<input id="btnCancel" type="button" value="取消"
onclick="swfu.cancelQueue();" disabled="disabled"
style="margin-left: 2px; font-size: 8pt; height: 29px;" />
</div>
</form>
<hr/>
<h2 class="demoHeaders">Dialog</h2>
<p><a href="#" id="dialog_link" class="ui-state-default ui-corner-all"><span class="ui-icon ui-icon-newwin"></span>Open Dialog</a></p>
<div id="dialog" title="Dialog Title">
</div>
<span onclick="javascript:$(window.parent.document.location.reload())">Parent window</span>
</div>
</body>
</html>
======================================================================
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>上传</title>
<#include "/WEB-INF/upload/add_head.ftl"/>
<style type="text/css">
/*demo page css*/
body{ font: 62.5% "Trebuchet MS", sans-serif; margin: 50px;}
.demoHeaders { margin-top: 2em; }
#dialog_link {padding: .4em 1em .4em 20px;text-decoration: none;position: relative;}
#dialog_link span.ui-icon {margin: 0 5px 0 0;position: absolute;left: .2em;top: 50%;margin-top: -8px;}
ul#icons {margin: 0; padding: 0;}
ul#icons li {margin: 2px; position: relative; padding: 4px 0; cursor: pointer; float: left; list-style: none;}
ul#icons span.ui-icon {float: left; margin: 0 4px;}
</style>
<script type="text/javascript">
// Dialog
$(function(){
alert("hahah");
// Dialog Link
$('#dialog_link').click(function(){
//
var dialogc='<div id="dialog" title="Dialog Title"></div>';
$("body").append(dialogc);
//
$('#dialog').html('<iframe src="${base}/admin/upload/Com_add.do" height="300" width="400"></iframe>');
//
$('#dialog').dialog({
autoOpen: false,
width: 600,
modal:true,
bgiframe: true
});
//
//
$('#dialog').dialog('open');
return false;
});
// Dialog Link
$('#dialog_link2').click(function(){
//
var dialogc='<div id="dialog" title="Dialog Title"></div>';
$("body").append(dialogc);
//
$('#dialog').html('<iframe src="http://192.168.1.154:8080/app/admin/upload/Com_add.do" height="300" width="400"></iframe>');
//
$('#dialog').dialog({
autoOpen: false,
width: 600,
modal:true,
bgiframe: true
});
//
//
$('#dialog').dialog('open');
return false;
});
});
</script>
</head>
<body>
${session.id}
<div id="content">
<h2 class="demoHeaders">Dialog</h2>
<p><a href="#" id="dialog_link" class="ui-state-default ui-corner-all"><span class="ui-icon ui-icon-newwin"></span>Open Dialog</a></p>
<p><a href="#" id="dialog_link2" class="ui-state-default ui-corner-all"><span class="ui-icon ui-icon-newwin"></span>Open Dialog</a></p>
</div>
</body>
</html>
取消关闭
====================================================================
In Javascript
$("#myDialog").dialog({
dialogClass: "my-dialog"
});
In CSS
.my-dialog .ui-dialog-titlebar-close{
display: none;
}
--------------------------------------------------
buttons: {
'Delete all items in recycle bin': function() {
$(this).dialog('close');
},
Cancel: function() {
$(this).dialog('close');
}
}
=====================================================================
下载中文名处理
需求:文件上传,保存到数据库的image/blob字段中,点击链接进行下载.
若文件名为中文,则经查证网上的资料得知,在ie与ff/opera中需要分别进行不同的处理,方能正确显示文件名.
据此,在下载文件的方法中,传入request参数,根据request.getHeader("user-agent")来判断客户端使用的是哪种浏览器.
如果是IE,则使用response.setHeader("Content-Disposition","attachment;filename=\""+ java.net.URLEncoder.encode(filename,"UTF-8") + "\"");
若使用ff/opera,则使用response.setHeader("Content-Disposition",attachment;filename=\""+ new String(filename.getBytes("UTF-8"),"ISO8859-1")+ "\"");
=====================================================================
struts2 :
public String downLoadFile()
{
try {
// contextPvd.getRequest().setCharacterEncoding("utf-8");
String path = contextPvd.getRequest().getParameter("path");
String realFilePath = contextPvd.getRequest().getSession().getServletContext().getRealPath(path);
File file=new File("D:\\WorkSpace\\netdisk\\TestPlace\\work\\eclipse\\netdisk\\WebRoot\\upload\\哈哈web-form-portlet-5.2.2.1 - 副本.war");
String mimeType = contextPvd.getRequest().getSession().getServletContext().getMimeType(realFilePath);
if (mimeType == null) {
mimeType = "application/octet-stream";
}
//设置MIME类型
contextPvd.getResponse().setContentType(mimeType);
contextPvd.getResponse().setHeader("Content-Disposition", "attachment; filename=\"" + "我的测试.rar" + "\"");
OutputStream output= contextPvd.getResponse().getOutputStream();
FileInputStream input = new FileInputStream(realFilePath);
try {
//基于byte数组读取文件并直接写入OutputStream, 数组默认大小为4k.
IOUtils.copy(input, output);
output.flush();
} finally {
//保证Input/Output Stream的关闭.
IOUtils.closeQuietly(input);
IOUtils.closeQuietly(output);
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
分享到:
相关推荐
当 bgiframe 属性被设置为 true 时,JQuery UI Dialog 将在 IE6 下使用 iframe 来覆盖 select 元素,以确保对话框能够正确地显示。 三、width 和 height 属性 width 和 height 属性用于设置对话框的宽度和高度。...
jQuery UI Frame Dialog是一款基于jQuery UI库的对话框插件,用于在网页中创建具有框架效果的弹出对话框。在官方1.1.2版本中,存在一个CSS加载问题,导致对话框的样式可能无法正常显示,影响了用户体验。这个问题在...
**jQuery UI Dialog与iFrame整合应用** jQuery UI Dialog是一款基于jQuery库的强大对话框组件,它提供了丰富的可定制化选项和多种交互模式,如模态对话框、非模态窗口、拖动、调整大小等功能。在某些场景下,我们...
jQuery UI是一个强大的JavaScript库,它扩展了基础的jQuery功能,提供了丰富的用户界面组件,如对话框(Dialog)、拖放(Draggable)、可排序(Sortable)和可折叠(Accordion)等。在这个项目中,jQuery UI被用来...
在使用jQuery UI的Dialog控件时,可能会遇到表单无法提交的问题。本文将详细介绍这一问题及其解决方法。具体来说,表单在Dialog控件中无法提交通常表现为提交按钮点击无效,或者即使页面产生了提交,服务器端也无法...
**jQuery Dialog 深度解析** jQuery Dialog 是 jQuery UI 库中的一个核心组件,它提供了一种优雅的方式来创建可自定义的弹出对话框...无论是在简单的提示信息,还是复杂的表单提交场景,jQuery Dialog 都能表现出色。
### jQuery UI Dialog 属性详解 #### 一、`autoOpen` 属性 - **默认值**:`true` - **作用**:控制对话框在初始化时是否自动打开。 - 当 `autoOpen` 设置为 `true` 时,对话框在创建后立即显示。 - 若设置为 `...
本文将深入探讨jQuery弹窗及其相关的jQuery UI库,特别是关于iframe弹窗的使用。 一、jQuery弹窗基础 jQuery弹窗通常基于JavaScript的DOM操作和事件处理功能,通过创建或修改DOM元素来实现弹出效果。jQuery提供了`...
当我们谈论“Jquery自带的弹出框效果”时,实际上是指jQuery UI中的几个对话框组件,如`dialog()`函数。这些弹出框不仅提供了基本的提示功能,还能实现复杂的交互式窗口,为用户界面添加丰富的用户体验。 1. **...
jQuery UI是jQuery的一个扩展库,提供了丰富的用户界面组件,如日期选择器、对话框、拖放功能、排序等。这些组件极大地提升了用户体验,且可以自定义样式以匹配网站设计。 1. **Dialog**:创建模态或非模态对话框,...
4. **jQuery UI Dialog**: jQuery UI Dialog是jQuery UI库的一部分,可创建模态或非模态对话框。Dialog组件提供了丰富的功能,如自动关闭、定时器、关闭按钮、标题和宽度设置。它还支持拖动和调整大小操作,适合创建...
首先,让我们深入了解jQuery UI中的`dialog`组件。jQuery UI提供了丰富的UI元素,其中包括对话框功能。通过使用`dialog`,我们可以创建模态或非模态的窗口,这些窗口可以用来显示信息、警告、确认或其他交互式内容。...
在本文中,我们将探讨如何将jQuery UI的Dialog插件修改为使用IFrame来展示框架页。Dialog插件是jQuery UI库中的一个强大组件,通常用于创建可自定义的模态对话框。它提供了多种功能,如调整大小、移动、动画效果以及...
其中,jQuery UI的Dialog组件是基于jQuery库开发的一个弹出窗口控件,主要用于创建可拖动、可改变大小的对话框,并能实现丰富的交互效果。本文将详细介绍jQuery Dialog对话框事件的用法,并结合实例分析静态提示类...
EasyUI是一个基于jQuery的UI库,提供了许多预设的组件和布局,如对话框、表格等,可以帮助开发者快速构建具有专业外观的Web应用。在本例中,EasyUI的对话框组件可能被用于创建弹出框,其内置的遮罩功能可以轻松实现...
2. **jQuery UI Dialog**:jQuery UI库提供了Dialog组件,可以创建可自定义的模态窗口。它支持多种配置选项,如拖动、调整大小、自动定位等,且可以轻松地与现有的jQuery UI主题集成。但是,jQuery UI库较大,如果...
1. **jQuery UI Dialog**:这是jQuery UI库的一部分,提供了丰富的可定制化选项,包括标题、按钮、拖动、自动调整大小等功能。可以轻松创建模态和非模态对话框,支持多种主题。 2. **Bootstrap Modal**:基于...
jQuery提供了一些插件,如jQuery UI的Dialog或者Bootstrap的Modal,来方便地创建弹出层。 1. jQuery UI Dialog: jQuery UI的Dialog组件可以将任何HTML元素转化为一个具有可定制标题、按钮和关闭功能的弹出窗口。...