Jfinal+Jquery uploadify实现多文件上传实例

访客8年前 (2017-05-16)Jfinal3857


包文件

图片.png

外部jar包


jfinal-2.0-bin-with-src.jar(JFinal核心包)  
fastjson-1.2.7.jar(用于json数据的处理)  
cos-26Dec2008.jar(支持JFinal自带的上传功能)


1. 引入 css,js外部文件


<link id="bscss" href="${root}/bootstrap/css/bootstrap.css"
    rel="stylesheet">
<link rel="stylesheet" type="text/css" href="${root!}/uploadify/uploadify.css">
<link rel="stylesheet" type="text/css"
    href="${root!}/webUploader/style.css"><!--从官网下载的实例中有 -->
<script src="${root!}/resource/front/js/jquery-1.9.1.min.js"
    type="text/javascript"></script>
<script src="${root!}/uploadify/jquery.uploadify.min.js" type="text/javascript"></script>
<script src="${root}/bootstrap/js/bootstrap.js" type="text/javascript"></script>
2.页面部分

用来放置webuploader的dom

 <form enctype="multipart/form-data" method="post">
               <input type="file" id="file_upload"  width="400px" > 
  </form>
   <br>
  <ul id="url" style="padding-left: 100px"></ul>
3.JS部分, 初始化webuploader组件,设置上传等事件监听。

     $(function() {
              //上传附件
    $('#file_upload').uploadify(
                            {
                                //校验数据
                                'swf' : '${root!}/uploadify/uploadify.swf', //指定上传控件的主体文件,默认‘uploader.swf’
                                'uploader' : '${root!}/front/complain/uploads/${cid}', //指定服务器端上传处理文件,默认‘upload.php’
                                'auto' : true, //手动上传
                                'buttonImage' : '${root!}/uploadify/uploadify-browse.png', //浏览按钮背景图片
                                'multi' : false, //单文件上传
                                 'method'   : 'post', 
                                //'fileTypeExts' : '*.gif; *.jpg; *.png; *.flv;*.avi;*.mp4;*.mp3;txt;zip;doc;zip', //允许上传的文件后缀
                                'fileSizeLimit' : '300MB', //上传文件的大小限制,单位为B, KB, MB, 或 GB
                                'successTimeout' : 35, //成功等待时间
                                'onUploadSuccess' : function(file, data,
                                        response) {//每成功完成一次文件上传时触发一次t
                                    var image=eval("["+data+"]")[0];
                                        $('#url').append(
                                                "<li> "+image.fileName+"</a> </li><br/>");
                                    //var image=eval(data);
                                    //alert(image[0]["big"]);<span ><a href='${root!}/uploadify/delete/'+image.fileName>删除</a><span>
                                },
                                'onUploadError' : function(file, data, response) {//当上传返回错误时触发
                                    $('#url').append("<li>" + data + "</li>");
                                }
                            });
});

4. 后台部分,获取文件

public class ComplainAddController extends Controller{
    
    /**
     * 上传附件
     */
    public void uploads() {
        String uuid = getPara();
        // 上传代码
        UploadFile uf = getFile("Filedata","comFile");
      
        //获得到了端口
        String url ="/upload/comFile/"+uf.getFileName();
        
        String fileName=uf.getFileName();
        ComplainFile comFile = new ComplainFile();
        comFile.setCaseId(uuid);
        comFile.setUrl(url);
        comFile.setName(fileName);
        comFile.setSuffiix(fileName.split("\\.")[1]);
        comFile.save();  
        setAttr("fileName",fileName);
        setAttr("uuid",uuid);
        renderJson();
    }
}



效果:

图片.png


不过此方法不支持手机端,若电脑端和手机端兼可用,可使用百度WebUploader插件,请参考

Jfinal +百度WebUploader组件实现多图片上传


本文原创,转载必追究版权。

分享给朋友:

相关文章

高情商女孩,女生看了都喜欢

高情商女孩,女生看了都喜欢

 王晨阳:19岁大四,北京航空航天大学,插画专业,夜市卖过化妆品,开过儿童美术教学班,某网站签约网络小说作家,15岁开始,3年时间写了8部小数约24万字;对话1:沈东军 vs王晨阳沈东军:像...

程序员为什么不炫富

程序员为什么不炫富

 提到互联网,尤其是互联网工程师们,人们往往会想到两个词:“高薪”和“高压”。在知乎上“为什么很少见工资高的程序员炫富?”的问题下,一个得票很高的答案是:“乐意炫富的人,不是因为有钱,而是因为付出的少...

dwz +jfinal 批量多文件上传 实例

页面部分:<link href="${root}/style/dwz/uploadify/css/uploadify.css" rel="sty...

jquery 获取焦点

当文本框或下拉等必填时,如果没有输入就给予提示并使该文本框获得焦点!如果是js,对象.focus()即可。可是如果是jQuery, 这样$("#aa") 返回的就不是DOM对象而是...

ajax提交表单、ajax实现文件上传(multipart/form-data)

方式一:利用from表单的targer属性 + 隐藏的iframe 达到类似效果, 支持提交含有文件和普通数据的复杂表单方式二:使用jquery的$.ajax({..}), 支持提交普通表单,但不支持...

jfinal 定时任务

1、去quartz官网下载 定时任务jar包(http://www.quartz-scheduler.org/)quartz-*.*.*.jar2、创建定时任务:public class SetAre...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。