plupload组件问题(附代码)请指导,谢谢,图片自动删除了但是队列没有删除?

问题最终目的是实现,判断重复图片并自动删除。

以下是与目的不一样效果截图
选择重复图片后弹出提示信息

队列没有删除

以下是主要代码。
'FilesAdded': function(up, files) {
    $('table').show();
    $('#success').hide();
    //图片列表最多只能有5张,判断是否超过,超过的则移除
    var count = files.length + uploadStoreImgUrl.length + fileNameList.length;
    if (files.length > 5 && (uploadStoreImgUrl.length + fileNameList.length) == 0) {
        var addLength = files.length;
        for (var i = addLength - 1; i > addLength - 1; i--) {
            up.removeFile(files[i].id);
            files.splice(i, 1);
        }
    }
    if (count > 5) {
        var addFile = files.length - (count - 5) - 1,
        tempLength = files.length;
        for (var m = tempLength - 1; m > addFile; m--) {
            up.removeFile(files[m].id);
            files.splice(m, 1);
            up.disableBrowse(true); //选择数量达到限制后禁止选择文件
            $('.glyphicon-plus').removeClass('glyphicon-plus').addClass('glyphicon-ban-circle'); //替换为禁止图标
            alert("超过上传数量限制,系统将自动删除多余的文件");
        }

    }
    plupload.each(files,
    function(file) {
        var progress = new FileProgress(file, 'fsUploadProgress');

        //判断图片是否重复,弹出提示并且从列表删除
        for (var i = 0; i < files.length; i++) {
            if (file.name == fileNameList[i]) {
                //$('#' + file.id).find('td').eq(0).append("<td>该图片已存在列表,请删除!</td>");
                up.removeFile(files[i].id);
                //files.splice(i, 1);
                alert("该图片已存在列表,系统将自动删除");
            }
        }
        //添加到上传队列,并且在页面预览
        fileNameList.push(file.name);
        var preloader = new mOxie.Image(); //图片上传前预览
        preloader.onload = function() {
            preloader.downsize(100, 100); //压缩图片
            var imgItem = '<img id="' + file.id + '" name="' + file.name + '" src="' + preloader.getAsDataURL() + '">';
            var liCont = '<li>' + imgItem + '<div class="icon-close close-icon"></div></li>';
            $('#' + file.id).find('td').eq(0).prepend(liCont);
        }
        preloader.load(file.getSource());
        progress.setStatus("等待..."); //等待上传
        progress.bindUploadCancel(up);
    });

}
阅读 1.2k
评论
    1 个回答
    • 1
    • 新人请关照

    uploader.bind('FilesAdded',function(uploader,files){

        var fileLen = uploader.files.length;
        if(fileLen>1){
            uploader.splice(0,fileLen-1);//清空上传队列
        }
    
        console.log(uploader.files.length)
    
        $('#fileUpload').next('span').remove();
        $('#fileUpload').after('<span>'+files[0].name+'</span>')
    });
      撰写回答

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