• jQuery File Upload的使用


    jQuery File Upload 是一个Jquery文件上传组件,支持多文件上传、取消、删除,上传前缩略图预览、列表显示图片大小,支持上传进度条显示等,以下就介绍一下该插件的简单使用

    1、需要加载的js文件有

      jquery.js,

      jquery-ui-widget.js,

      jquery.iframe-transport.js,

      jquery.fileupload.js

    2、upload.js的配置

    a、html代码

    <input type="file" id='file'>
    <input type="button" value="提交" id='submit'>

    b、与页面绑定的javascript代码

    $('#submit').click(function () {
        if (currentFile) {
            //动态的传输参数
            currentFile.formData = {id:123};
            //进行文件提交
            currentFile.submit();
        } else {
            utils.error('请传入.xlsx文件');
        }
    });

    c、javascript代码

    $('#file').fileupload({
        //type: 文件上传HTTP请求方式,可以选择“POST”,“PUT”或者"PATCH",
        type: 'POST',
        //url:请求发送的目标url,默认为post方式
        url: '/admin/qa/upload-file',
        //dataType:希望从服务器返回的数据类型,默认"json"
        dataType: 'json',
        //formData:需要传输的参数,这里是静态的传输,如果需要动态的传输需要在add这个进程里面进行传输
        formData: {id: 123},
        //autoUpload:是否自动上传,即当文件放入file之后便自动上传,默认为true
        autoUpload: false,
        //acceptFileTypes:允许上传的的文件类型
        acceptFileTypes: /(.|/)xlsx$/i,
        //maxFileSize: 最大上传文件大小
        maxFileSize: 1,
        //minFileSize:最小上传文件大小,单位B
        minFileSize: 1,
        //previewMaxWidth : 图片预览区域最大宽度
        //添加文件后触发
        add: function (ev, data) {
            currentFile = null;
            $('#result-panel').html('');
            var name = data.files[0].name;
            if (/(.|/)xlsx$/i.test(name)) {
                $('#xlsFileShow').html(name);
                //data里面包含些方法,如果submit提交这个API,可以根据用户的需求进行提交
                //如果需要动态的传参可以用data.formData=123,进行传输
                currentFile = data;
                //执行如果不符合的条件
            } else {
                //执行如果传入的文件名称不符合正则匹配的代码
            }
        },
        //当一个单独的文件处理队列结束(完成或失败时)触发
        progressalways: function (e, data) {
        },
        //全局上传处理事件的回调函数,即上传过程时触发
        progressall: function (e, data) {
            //进度条可以用data.loaded与data.total的比进行完成
        },
        //上传请求失败时触发的回调函数,如果服务器返回一个带有error属性的json响应这个函数将不会被触发
        fail: function (e, data) {
        },
        // 上传请求成功时触发的回调函数,如果服务器返回一个带有error属性的json响应这个函数也会被触发
        done: function (e, data) {
        },
        //上传请求结束时(成功,错误或者中止)都会被触发。
        always: function (e, data) {
        }
    })

     具体的官方文档地址 :

    http://hayageek.com/docs/jquery-upload-file.php#doc

  • 相关阅读:
    js 性能调试
    js 面向对象编程
    js 零碎
    如果遇到二维数组 想取某个字段的和
    昨天写支付接口时遇到支付接口返回数据接收地址,session数据丢失(或者说失效)的问题
    mysql报错: 1548-Cannot load from mysql.proc. The table is probably corrupted 解决办法
    php 时间倒计时代码 个人写法 有好的想法的欢迎贴出来分享
    linux 环境下安装mysql5.6
    关于数据库连接不上 出现错误的问题
    推荐一个不错的css3网站 可以直接调用的
  • 原文地址:https://www.cnblogs.com/rickyctbu/p/9920427.html
Copyright © 2020-2023  润新知