upload文件上传设置文件类型问题

讨论 已结
6 1021
Darsoon
Darsoon 2017-12-30
悬赏:20飞吻
使用文件上传插件,限制可上传文件类型是通过设置
 , accept: 'file' 
, exts: 'xml|xlsx|md'
这种方式来设置的,但如果有一个选择器,选择不同option,就需要上传不同的文件类型,这样怎样进行设置呢。
我有试过给exts设置变量,然后通过修改变量的值来控制,但失败了。也试过每次选择都重新初始化一次也失败了。请大佬救救急。
回帖
  • 月磊
    2017-12-30
    好像可以、、读了源码好像是这么用的、、贤心大佬代码好多我都看不懂
    0 回复
  • 月磊
    2017-12-30
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8">
    <title>layui</title>
    <meta name="renderer" content="webkit">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <link rel="stylesheet" href="css/layui.css" media="all">
    <!-- 注意:如果你直接复制所有代码到本地,上述css路径需要改成你本地的 -->
    </head>
    <body>

    <button class="layui-btn" onclick="changeExts('jpg');">jpg点击</button>
    <button class="layui-btn" onclick="changeExts('png');">png点击</button>
    <button class="layui-btn" id="test1">单纯的按钮</button>

    <script src="layui.js" charset="utf-8"></script>
    <script type="text/javascript">
    var uploadInst;

    layui.use('upload', function(){
    upload = layui.upload;

    uploadInst = upload.render({
    elem: '#test1' //绑定元素
    ,url: '/upload/' //上传接口
    ,done: function(res){
    //上传完毕回调
    }
    ,error: function(){
    //请求异常回调
    }
    });
    });


    function changeExts(exts){
    document.getElementById('test1').innerText = '可以上传'+exts+'按钮';
    uploadInst.config.exts=exts;//核心语句!!!

    }
    </script>
    </body>
    </html>
    0 回复
  • Darsoon
    2017-12-30
    @月磊 好像可以了,感谢
    0 回复
  • Darsoon
    2017-12-31
    @月磊 还有个问题想问一下, 设置最多上传数量
    number: 1
    的时候,却可以预览两个文件,只有在选择第三个文件的时候,才会报错说“最多同时上传一个文件”,这是什么原因呢
    0 回复
  • 月磊
    2017-12-31
    如果number是1,直接设置multiple为false吧、
    0 回复
  • Darsoon
    2017-12-31

    我现在的配置是这样的,上传文件的时候只能一个一个选择,但是还是可以预览两个文件,不知道怎么回事
    0 回复
本帖已设置禁止回复