`
小杨学JAVA
  • 浏览: 901450 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

swfupload初始化

 
阅读更多
<script type="text/javascript">
//上传开始
var swfus;
var SWF_SELECT_FILE_NAME = "";
var uploadDialogTip ;
function swfuLoad(uploadUrl, buttonText, postName) {
	var settings = {
			flash_url : "../js/SWFUpload/swfupload.swf",
			upload_url: uploadUrl,
			file_post_name : postName,
			file_size_limit : "500 MB",
			file_types : "*.xls;*.xlsx;*.csv",
			file_types_description : "MS_EXCEL2003-2007",
			file_upload_limit : 50,   
			file_queue_limit : 1,  
			custom_settings : {
				progressTarget : "fsUploadProgress",
				cancelButtonId : "btnCancel"
			},
			debug: false,

			// Button settings
			button_image_url: "../images/swf_btn_bg.gif",
			button_width: "76",
			button_height: "26",
			button_placeholder_id: "spanButtonPlaceHolder",
			button_text: "<span class='theFont'>"+buttonText+"</span>",
			button_text_style: ".theFont { font-size: 11;font-weight:bold;text-align:center; color:#323d1f;background-color:transparent; }",
			//button_text_left_padding: 12,
			button_text_top_padding: 4,
			
			// The event handler functions are defined in handlers.js
			file_dialog_start_handler : fileDialogStart,
			file_queued_handler : fileQueued,
			file_queue_error_handler : fileQueueError,
			file_dialog_complete_handler : fileDialogComplete,
			upload_start_handler : uploadStart,
			upload_progress_handler : uploadProgress,
			upload_error_handler : uploadError,
			upload_success_handler : uploadSuccess,
			upload_complete_handler : uploadComplete,
			queue_complete_handler : queueComplete	// Queue plugin event
		};
	swfus = new SWFUpload(settings);
};
function uploadProgress() {
	uploadDialogTip = art.dialog.tips('正在导入数据,请稍等...');
}
function uploadError (file, errorCode, message) {
	if (uploadDialogTip){
		uploadDialogTip.close();
		var progress = new FileProgress(file, this.customSettings.progressTarget);
		progress.setError();
		progress.toggleCancel(false);
		switch (errorCode) {
		case SWFUpload.UPLOAD_ERROR.HTTP_ERROR:
			progress.setStatus("Upload Error: " + message);
			art.dialog.alert("文件 " + file.name + " 上传失败. 网络错误."+message);
			break;
		case SWFUpload.UPLOAD_ERROR.UPLOAD_FAILED:
			progress.setStatus("Upload Failed.");
			this.debug("文件 " + file.name + " 尺寸过大. " + file.size + ", 请重新选择."+message);
			break;
		case SWFUpload.UPLOAD_ERROR.IO_ERROR:
			progress.setStatus("Server (IO) Error");
			art.dialog.alert("Error Code: IO Error, File name: " + file.name + ", Message: " + message);
			break;
		case SWFUpload.UPLOAD_ERROR.SECURITY_ERROR:
			progress.setStatus("Security Error");
			art.dialog.alert("Error Code: Security Error, File name: " + file.name + ", Message: " + message);
			break;
		case SWFUpload.UPLOAD_ERROR.UPLOAD_LIMIT_EXCEEDED:
			progress.setStatus("Upload limit exceeded.");
			art.dialog.alert("文件队列已满,文件 " + file.name + " 上传失败. " + message);
			break;
		case SWFUpload.UPLOAD_ERROR.FILE_VALIDATION_FAILED:
			progress.setStatus("Failed Validation.  Upload skipped.");
			art.dialog.alert("Error Code: File Validation Failed, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
			break;
		case SWFUpload.UPLOAD_ERROR.FILE_CANCELLED:
			// If there aren't any files left (they were all cancelled) disable the cancel button
			if (this.getStats().files_queued === 0) {
				document.getElementById(this.customSettings.cancelButtonId).disabled = true;
			}
			progress.setStatus("Cancelled");
			progress.setCancelled();
			break;
		case SWFUpload.UPLOAD_ERROR.UPLOAD_STOPPED:
			progress.setStatus("Stopped");
			break;
		default:
			progress.setStatus("Unhandled Error: " + errorCode);
			art.dialog.alert("未知错误,错误代码  " + errorCode + ", 文件 " + file.name + ", File size: " + file.size + ", Message: " + message);
			break;
		}
	}
}
function uploadSuccess(file, serverData) {
    try {
    	uploadDialogTip.close();
	    var jsonData;
	    eval("jsonData = " + serverData + ";");
		this.cancelUpload();
	    if(jsonData.status){
	    	var resultdata = jsonData.data;
	    	var dialogContent = "<div style='width:" + 1000 * 0.45 + "px'><div style='overflow-y:auto;'>"+jsonData.messages+"</div></div>";
	    	art.dialog({
	    		title: '导入完成',
	    		height:190,
	    		width:350,
		        content: dialogContent,
		        icon: 'succeed',
				ok: function(){
	    			//reSearch();
				},
				cancel: function(){
	    			//reSearch();
				},
				close: function(){
					//reSearch();
				}
	    	});
		} else {
			art.dialog.error(jsonData.messages);
		}
		file.id = "singlefile";	
		var progress = new FileProgress(file, this.customSettings.progress_target);
		progress.setComplete();
		progress.setStatus("Complete.");
		progress.toggleCancel(false);
		} catch (e) {
			//art.dialog.error("刷新页面后重试.");
		}
	}

function fileQueueError(file, errorCode, message) {
	try {
		if (errorCode === SWFUpload.QUEUE_ERROR.QUEUE_LIMIT_EXCEEDED) {
			art.dialog.alert("每次同时只能选择 "+swfu.settings.file_queue_limit+" 个文件导入.");
			return;
		}
		var progress = new FileProgress(file, this.customSettings.progressTarget);
		progress.setError();
		progress.toggleCancel(false);
		switch (errorCode) {
		case SWFUpload.QUEUE_ERROR.FILE_EXCEEDS_SIZE_LIMIT: 
			progress.setStatus("File is too big.");
			art.dialog.alert("文件:" + file.name + " 过大,请选择"+swfu.settings.file_size_limit+"以内的文件进行导入.");
			//this.debug("Error Code: File too big, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
			break;
		case SWFUpload.QUEUE_ERROR.ZERO_BYTE_FILE:
			progress.setStatus("Cannot upload Zero Byte files.");
			art.dialog.alert("请选择大于0KB,小于"+swfu.settings.file_size_limit+"的文件进行导入.");
			//this.debug("Error Code: Zero byte file, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
			break;
		case SWFUpload.QUEUE_ERROR.INVALID_FILETYPE:
			progress.setStatus("Invalid File Type.");
			art.dialog.alert("请选择类型为 "+swfu.settings.file_types_description+" 的文件进行导入.");
			//this.debug("Error Code: Invalid File Type, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
			break;
		default:
			if (file !== null) {
				progress.setStatus("Unhandled Error");
			}
			//this.debug("Error Code: " + errorCode + ", File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
			break;
		}
	} catch (ex) {
        this.debug(ex);
        art.dialog.error("导入数据失败,请刷新页面后重试.");
    }
}
function fileDialogComplete(numFilesSelected, numFilesQueued){
	if (numFilesSelected > 0 && numFilesQueued > 0) {
		var dialog = art.dialog.confirm("确认要导入 "+SWF_SELECT_FILE_NAME+" 吗?",function(){
				try {
					swfus.startUpload();
				} catch (ex) {
					dialog.close();
				}
			},function(){
				swfus.cancelUpload();
			});
	}
}
function queueComplete(numFilesUploaded) {
	//var status = document.getElementById("divStatus");
	//status.innerHTML = numFilesUploaded + " file" + (numFilesUploaded === 1 ? "" : "s") + " uploaded.";
	//alert(numFilesUploaded);
}
// 选中文件后确定后执行
function fileQueued(file) {
	SWF_SELECT_FILE_NAME = file.name;
	
}
// 窗口关闭后执行
function fileDialogStart() {
}
// GRIDcomplete的时候加入
/*
 * isLoaded = true;
	$("#t_list").append("<div style='float:left;'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span id='spanButtonPlaceHolder'></span><div style='display:none;' id='fsUploadProgress'></div><input id='btnCancel' type='button' value='Cancel' onclick='swfus.cancelQueue();' disabled='disabled' style='display:none;'/></div>");
	swfuLoad();
 */
 
</script>

 

分享到:
评论

相关推荐

    swfUpload 使用简单例子

    3. **初始化SWFUpload**:在JavaScript中调用SWFUpload初始化函数,传入配置参数。 4. **事件绑定**:注册事件处理器,处理用户选择文件、上传开始、上传进度、上传成功或失败等事件。 5. **UI集成**:创建自定义的...

    swfUpload+多文件上传php实例代码

    1. **SWFUpload 初始化**: 在HTML页面中,需要通过JavaScript初始化SWFUpload实例。这通常包括设置上传URL、文件类型限制、最大文件大小、文件数量限制等参数。 2. **事件监听**: SWFUpload 提供了一系列事件,...

    c# swfupload mvc

    这部分通常包括一个隐藏的表单和SwfUpload初始化的脚本。设置SwfUpload的参数,如文件类型限制、上传URL、回调函数等。 3. **创建控制器**:在MVC项目中,创建一个控制器来处理文件上传请求。这个控制器的某个方法...

    大名鼎鼎SWFUpload- Flash+JS 上传

     以下是一个标准的SWFUpload初始化设置所需的参数,你可以根据需要自己进行删减:  {  upload_url : "http://www.swfupload.org/upload.php", 处理上传请求的服务器端脚本URL  file_post_name : "Filedata", 是...

    SWFUpload图片上传并显示javaee+jsp版

    客户端的配置通常涉及SWFUpload初始化,设置参数,如上传URL、文件类型限制等;而服务器端的开发则涉及到接收文件,保存到服务器的指定位置,并返回响应信息。 总结来说,"SWFUpload图片上传并显示javaee+jsp版...

    swfupload无刷新上传文件

    2. **配置SwfUpload**:通过JavaScript的SwfUpload初始化函数设置各种参数。 3. **创建上传区域**:在HTML中创建用于用户点击选择文件的按钮,SwfUpload会替换这个按钮。 4. **绑定事件**:注册SwfUpload的各种...

    swfupload多文件上传实例

    1. **初始化**:在HTML页面中通过JavaScript调用SwfUpload初始化函数,设置上传参数,如服务器URL、文件类型限制、最大文件大小等。 2. **生成Flash对象**:初始化后,SwfUpload会在页面中生成一个隐藏的Flash对象,...

    asp.net利用swfupload批量上传.zip

    在这个项目中,可能包含对SWFUpload初始化的设置,或者处理与上传相关的全局事件。 4. **Default.aspx、upload.aspx、thumbnail.aspx**:这些都是ASP.NET的Web页面,分别代表不同的功能页面。Default.aspx可能是...

    Asp.Net SWFUpload多文件上传;KindEditor富文本框用户控件

    2. 创建上传按钮,通过JavaScript调用SWFUpload初始化。 3. 配置上传参数,如服务器端处理页面、文件类型等。 4. 处理上传事件,如文件选择、上传开始、上传完成等。 5. 在服务器端接收文件并保存,可能需要实现...

    swfupload实现文件上传

    - **初始化设置**:通过JavaScript调用SWFUpload初始化方法,设置如上传URL、文件类型限制、文件大小限制等参数。 - **添加事件监听器**:SWFUpload 提供了多种事件,如文件选择、文件上传成功、上传失败等,通过...

    SWFUpload Demo.zip

    以下是一个简单的SWFUpload初始化示例,以及Java Servlet处理上传文件的代码片段: ```javascript // JavaScript var swfUploadInstance = new SWFUpload({ upload_url: "uploadServlet", file_post_name: ...

    swfupload 跨域问题

    2. 在SWFUpload初始化时设置跨域参数,包括上传URL、Flash URL、跨域策略文件和开启跨域选项。 3. 服务器端API处理跨域请求,返回正确的响应头,如`Access-Control-Allow-Origin`等。 遵循这些步骤,你应该能够成功...

    swfupload文件上传

    以下是一个简单的SWFUpload初始化示例: ```javascript var swfu; var settings = { upload_url: "upload.php", file_post_name: "Filedata", file_size_limit : "5 MB", file_types : "*.jpg;*.png;*.gif", ...

    SWFUpload 批量上传 图片

    以下是一个简单的SWFUpload 初始化和上传操作的示例代码: ```javascript var swfu; function initSWFUpload() { var settings = { flash_url : "swfupload.swf", button_image_url : "button.png", button_...

    swfupload 的文件上传程序 java 上传方式 !

    - 使用JavaScript调用`SwfUpload`构造函数初始化上传组件,设置各种配置项,如上传URL、文件类型限制、最大文件大小等。 3. **事件处理** - SwfUpload 提供了一系列事件,如`fileDialogStart`(文件选择对话框...

    ASP.NET-[上传下载]SwfUpload多文件上传演示版源码.zip

    1. **SwfUpload初始化**:在HTML页面中,你需要嵌入SwfUpload的SWF文件,并通过JavaScript设置各种配置参数,如上传URL、允许的文件类型、最大文件大小等。 2. **事件处理**:SwfUpload提供了丰富的事件,如文件...

    SwfUploadDemo

    - **SwfUpload初始化配置**:JavaScript代码中设置SwfUpload的参数,如上传URL、文件类型限制、最大文件大小等。 - **事件处理函数**:如`fileQueued`、`fileUploadProgress`、`fileUploadComplete`等,根据不同的...

    swfuplaod+struts2实现多文件上传

    2. **配置SWFUpload**:在HTML页面中,通过JavaScript调用SWFUpload初始化方法,配置文件选择、文件类型限制、上传URL等参数。 3. **创建Struts2 Action**:在Struts2框架中,创建一个处理文件上传的Action类,该类...

    swfupload上传demo示例

    在视图层,编写HTML和JavaScript代码来初始化SwfUpload实例,设置上传参数如文件类型、大小限制等,并定义上传成功后的回调函数。 配置文件的修改: 在使用SwfUpload时,可能需要修改其配置文件,比如设置允许上传...

    swfupload flash上传兼容所有浏览器

    1. **初始化设置**:SWFUpload 的使用始于创建一个实例,开发者需要配置各种参数,如上传URL、文件类型限制、最大上传文件大小等,然后通过JavaScript调用`SWFUpload.getInstance()`来实例化组件。 2. **事件处理**...

Global site tag (gtag.js) - Google Analytics