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

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


包文件

图片.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组件实现多图片上传


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

分享给朋友:

相关文章

Oracle 数据库cmd命令备份

 //导出exp wsbspt/wsbspt@192.168.1.101/wsbs file=D:/wsbspt.dmp log=D:/wsbspt.txt//导入imp &nbs...

js动态加载复选框checkbox(XML串)

 首先,使用JS动态产生Checkbox可以采用如下类似的语句:代码如下:var checkBox=document.createElement("input");che...

揭秘!如何用一句话找到你的一万微友

 玩微商一年半的时间了,现在的微商如火如荼,很多刚进入微商行业的伙伴都在烦恼一个问题,那就是粉丝、粉丝,我最近调查了身边30多个微友,有25个竟然都是好友问题,有的竟然给我说主动加了50多个...

js限制input只能输入数字、英文、汉字

 1.只能输入数字和英文的:  <input onkeyup="value=value.replace(/[\W]/g,'') "...

是谁动了我的座位

是谁动了我的座位

女孩一上火车,见自己的座位上坐着一男士。她核对自己的票,客气地说:“先生,您坐错位置了吧?” 男士拿出票嚷嚷着:“看清楚点,这是我的座,你瞎了?” 女孩仔细看了他的票,不再做声,默...

Java 实现用户资料完整度的前端显示(或根据填写资料自动评分)

前端使用 Bootstrap 的进度条组件显示百分比,后台读取权重并计算信息完整度,并将计算的结果返回给前端,供页面显示。CSS1<link href="static/sc/...

发表评论

访客

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