plupload上传插件的一些问题,求解答和解决方法

问题一:
plupload中的监听方法
FileUploaded

我在其中监听文件上传的返回参数
接到后台传来的返回参数,已经相同文件存在,并提示询问是否覆盖
在我点击确认覆盖时候,我调用plupload的uploader.start();方法,发现,此方法并没有调用上传接口
求问,我该如何在点击确认覆盖时候,再次上传该文件

FileUploaded: function(up, file, info) {  // 当队列中的某一个文件上传完成后触发监听函数参数

    var resp = JSON.parse(info.response);

    if(resp.code == '0000'){ // 上传成功
        layer.alert(resp.desc, {icon: 1,closeBtn:false}, function(){
            plupload.each(file,function(file) {
                puploader.removeFile(file);
            });
            document.getElementById('filelist').innerHTML = "";
            brand_list('');
        });
    }else if(resp.code == '4999'){ // 后台检测出重复文件,返回4999 code
        var repeat = layer.open({ // 询问用户是否需要覆盖
            type: 1,
            title: "错误信息",
            icon: 7,
            closeBtn: false,
            shade: 0,
            content: "<div style='padding:15px;'>文件"+file.name+"错误," + resp.desc + "</div>",
            btn: ['覆盖', '取消'],
            yes: function(index, layero) { // 确认覆盖
                var data;
                data = {force: "true"};
                puploader.setOption("multipart_params", data); // 重新定义传参,告诉后台需要覆盖
                puploader.start(); // 开始上传 **(就是这里,这个方法无法重新上传,求解答)**
                layer.close(repeat);
            },
            no: function(index, layero) {
                layer.close(repeat);
            }
        });
        return false;
    }else{
        layer.alert(resp.desc, {icon: 7});
    }

}
阅读 983
评论
    2 个回答
    • 2
    • 新人请关照

    遇到了同样的问题 ,关注中

      检查下 uploader 对象中files 是否存在上传文件队列!
      如果没有上传文件,那么start()是不会被触发的!

        撰写回答

        登录后参与交流、获取后续更新提醒