`

uploadify文件上传

 
阅读更多

    Uploadify是JQuery的一个上传插件主要功能是批量上传文件

    支持单文件或多文件上传,可控制并发上传的文件数

    在服务器端支持各种语言与之配合使用,诸如PHP,.NET,Java……

    通过参数可配置上传文件类型及大小限制

    通过参数可配置是否选择文件后自动上传

    易于扩展,可控制每一步骤的回调函数(onSelect, onCancel……)

    通过接口参数和CSS控制外观

 

引入uploadify的工具包


 

<link rel="stylesheet" href="<%=request.getContextPath()%>/js/uplodify/uploadify.css" type="text/css" />
<script type="text/javascript" src="<%=request.getContextPath()%>/js/jquery-1.9.1.js"></script>
<script type="text/javascript" src="<%=request.getContextPath() %>/js/uplodify/jquery.uploadify.min.js"></script>

  

  

 
<div id="attachs"></div>   //进度条显示
<input type="hidden" id="fujianIds" name="ids"/> //上传后地址保存在数据库返回的id集合,
<input type="file" id="file_upload" name="userAttach"/>

 <a href="javascrit:;" onclick="javascript:$('#file_upload').uploadify('upload','*')" class="button icon add">上传</a>
		   <a href="javascrit:;" onclick="javascript:$('#file_upload').uploadify('cancel', '*')" class="button icon add">取消上传</a>

 
 

<script type="text/javascript">

var v_attrchids= "";
$(document).ready(function() {
    $("#file_upload").uploadify({
        'auto':false,//是否自动上传
        'successTimeout':99999, //超时时间上传成功后,将等待服务器的响应时间: 单位:秒
       'formData':{
        //附带值 JSON对象数据,将与每个文件一起发送至服务器端。如果为动态值,请在onUploadStart()中使用settings()方法更改该JSON值
    	   },  
        'swf': "<%=request.getContextPath()%>/js/uplodify/uploadify.swf", //flash
        'queueID':'uploadfileQueue',//文件选择后的容器div的id值 
        'fileObjName':'userAttach',//要上传的文件名称 要与后台Action的文件名(hereFile)保持一致    
        'uploader':'<%=request.getContextPath()%>/user/uploadFile.do',//上传地址
        'buttonImage':'<%=request.getContextPath()%>/js/uplodify/background.jpg',//图片按钮
        //浏览按钮的大小
        'width':'150',
        'height':'25',
        'fileTypeExts':'*.jpg;*.jpge;*.gif;*.png',//允许上传的文件后缀
        'fileSizeLimit':'1000KB',//上传文件的大小限制允许上传文件的最大 大小单位(B, KB, MB, or GB)(0为没有限制)
        'queueSizeLimit' : 3,//允许上传的文件的最大数量。
        //选择上传文件后调用
        'onSelect' : function(file) {
              //alert("jljklj");    
        },
        //返回一个错误,选择文件的时候触发
            'onSelectError':function(file, errorCode, errorMsg){
            switch(errorCode) {
                case -100:
                    alert("上传的文件数量已经超出系统限制的"+$('#file_upload').uploadify('settings','queueSizeLimit')+"个文件!");
                    break;
                case -110:
                    alert("文件 ["+file.name+"] 大小超出系统限制的"+$('#file_upload').uploadify('settings','fileSizeLimit')+"大小!");
                    break;
                case -120:
                    alert("文件 ["+file.name+"] 大小异常!");
                    break;
                case -130:
                    alert("文件 ["+file.name+"] 类型不正确!");
                    break;
            }
        },
        //检测FLASH失败调用
        'onFallback':function(){
            alert("您未安装FLASH控件,无法上传图片!请安装FLASH控件后再试。");
        },
        //上传到服务器,服务器返回相应信息到data里
        'onUploadSuccess':function(file, data, response){
        	var attach= eval("("+data+")");
        	v_attrchids += "," + attach.id;
        	$('#attachs').append('<span id="fujian_'+attach.id+'">'+'<img src=<%=request.getContextPath()%>'+attach.path+' height="50" width="50">'+'<a href="javascript:;" onclick="delFujian('+attach.id+');">删除</a></span>');
        	$("#fujianIds").val(v_attrchids);
        },
        
      //当单个文件上传出错时触发
        'onUploadError': function (file, errorCode, errorMsg, errorString) { 
        //	alert("上传失败");
       // 	alert(文件 ["+file.name+"] + ' 上传失败: ' + errorString); 
        	} 
    });
});
  var basePath = "${ctx }";
  document.write("<script type='text/javascript' " 
          + "src='"+basePath+"/js/uploadify/jquery.uploadify-3.1.js?" + new Date()  
          + "'></s" + "cript>");
</script>

 

  后台处理

   uploadify是基于ajax

   

	


                private UserAttach userAttachDto =new UserAttach();
		
		private String ids;
		
	   //上传文件 必须与前jsp页面中uploadify中参数 'fileObjName':'demo1' 保持一致
		private File userAttach;
		//文件名 命名规则 按照 上传文件+ FileName 会自动匹配相应文件名
		private String userAttachFileName;
	
		
	    public void uploadFile(){
		//獲取當前要上傳的路徑
		String userAttachUrl = getServletContext().getRealPath(getProperty("uploadpath")); //上传地址
		if(userAttach!=null){
			String[] split = userAttachFileName.split("\\.");
		    String fileLastName=UUID.randomUUID().toString()+"pbw."+split[split.length - 1];
			FileUtil.upFile(userAttach, fileLastName, userAttachUrl);
			String Url=getProperty("uploadpath")+fileLastName;
			userAttachDto.setUserAttachUrl(Url);
			userAttachDto.setUserAttachName(fileLastName);
			System.out.println(Url);
			userService.insertUserAttach(userAttachDto);
			int id = userAttachDto.getId();//
			out("{\"id\":" + id + ",\"path\":\""+Url+ "\"}");
		}
	} 
	    

  

  

 

   

 

  • 大小: 7.9 KB
  • 大小: 29.6 KB
分享到:
评论

相关推荐

    C# uploadify文件上传.zip

    这个压缩包“C# uploadify文件上传.zip”很可能是包含了一个完整的示例项目,帮助开发者了解如何在C# ASP.NET应用中集成Uploadify以实现文件上传。 Uploadify的主要优点在于它支持多文件选择、进度条显示以及错误...

    uploadify多文件上传例子代码

    "uploadify"是一款广泛使用的JavaScript插件,它使得多文件上传变得简单而高效。本示例代码是关于如何使用uploadify在Java环境中(通过jsp和servlet)实现多文件上传的一个实例。 首先,uploadify是一个基于jQuery...

    c#_uploadify文件上传源码

    标题中的"C#_uploadify文件上传源码"指的是一种利用C#编程语言和Uploadify插件实现的文件上传解决方案。这一方案特别强调了对大文件的支持,表明它具有处理大文件上传的能力,如描述中提到的,能在局域网环境下快速...

    JQuery uploadify文件上传控件

    **jQuery Uploadify 文件上传控件详解** 在网页开发中,文件上传功能是非常常见且重要的一个环节。jQuery Uploadify是一款高效、易用的jQuery插件,它使得文件上传变得更加直观和用户体验友好。本篇文章将深入探讨...

    C#应用 jquery.uploadify 文件上传

    本篇文章将详细探讨如何利用jQuery的uploadify插件与C#后端配合,实现高效、稳定且用户体验良好的文件上传功能。 首先,`jQuery.uploadify`是一个流行的jQuery插件,它允许用户通过异步方式上传文件,显著改善了...

    php的jquery.uploadify文件上传例子

    至此,我们就完成了PHP和jQuery Uploadify文件上传的基本配置。在实际应用中,您可能需要根据项目需求调整上传限制、文件存储位置、错误处理等细节。Uploadify提供丰富的自定义选项,可以根据需要进行配置,以满足...

    jsp调用uploadify文件上传插件实现文件快速上传.rar

    jsp使用uploadify插件实现文件上传的示例,测试时将uploadify 直接导入myeclipse就能用了。  uploadify是一个与jquery和flash结合实现的上传程序,界面挺漂亮,用起来也方便,不过浏览器需要安装有Flash插件,好像...

    uploadify3.2实现文件上传

    Uploadify是一款广受欢迎的jQuery插件,主要用于实现网页上的文件上传功能。它的版本3.2在当时具有较高的稳定性和良好的用户交互体验,因此备受开发者喜爱。在这个教程中,我们将深入探讨Uploadify 3.2的核心特性、...

    uploadify 文件上传

    二、Uploadify文件上传流程 1. 用户选择文件:在网页上,Uploadify会创建一个可点击或拖放的区域,用户可以选择一个或多个文件进行上传。 2. 预处理:在文件被实际上传之前,Uploadify可以应用预处理函数,如检查...

    详解jQuery uploadify文件上传插件的使用方法

    本文主要介绍了jQuery uploadify文件上传插件的使用方法,uploadify这个插件是基于js里面的jquery库写的。结合了ajax和flash,实现了这个多线程上传的功能。具有很好的参考价值,需要的朋友一起来看下吧

    uploadify文件异步上传

    Uploadify 是一个流行...综上所述,Uploadify是一个强大的文件异步上传工具,它可以被用来增强像QQ邮箱这样的服务,提供更流畅的文件上传体验。通过了解其工作原理和配置,开发者可以将其无缝集成到自己的应用程序中。

    java版uploadify文件上传例子

    在本文中,我们将深入探讨如何使用Java实现Uploadify文件上传功能。Uploadify是一款基于JavaScript的插件,它允许用户在Web应用中实现批量、多文件的上传,具有良好的用户体验。结合Java后端处理,我们可以创建一个...

    MVC4下对话框中使用Uploadify上传多个文件

    在本文中,我们将深入探讨如何在ASP.NET MVC4框架下,利用JQuery Dialog插件创建一个弹出对话框,并在其中集成Uploadify组件实现多文件上传功能。这将涉及前端JavaScript库、后端C#处理逻辑以及数据库交互,旨在提供...

    uploadify文件上传插件

    Uploadify是一款广泛应用于Web开发中的JavaScript文件上传插件,它为用户提供了一种高效、便捷的文件上传体验。这款插件以其简洁的API和高度自定义的特性,深受开发者喜爱。在本文中,我们将深入探讨Uploadify的核心...

    .net jQuery上传插件Uploadify 文件 上传 实例,简单易懂

    在.NET开发中,文件上传是一项常见的任务,而jQuery Uploadify插件则为这一过程提供了便捷的解决方案。Uploadify是一款基于JavaScript和Flash的文件上传组件,它允许用户通过拖拽或选择文件的方式,实现多文件同时...

    Uploadify文件上传插件

    包含1、Uploadify-v3.2在线中文手册.doc 2、文件上传插件flash免费版uploadify-3.2.zip 3、文件上传插件html5收费版uploadifive-v1.2.2-standard.zip

    asp.net+jquery.uploadify文件上传(异步上传)

    jQuery Uploadify是一款基于jQuery的文件上传组件,它提供了丰富的自定义选项和事件,支持多文件选择、预览、进度条显示等功能。用户可以选择多个文件并一次性上传,同时提供进度反馈,增强用户体验。其主要特性包括...

    uploadify 批量上传文件

    Uploadify是一款广泛应用于Web开发中的前端文件上传插件,它支持多文件选择、批量上传、进度条显示等功能,极大地优化了用户在网页上上传文件的体验。本文将深入探讨Uploadify的工作原理、主要特点以及如何在项目中...

Global site tag (gtag.js) - Google Analytics