Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 删除当前上载项目的div_Javascript_Jquery_Html - Fatal编程技术网

Javascript 删除当前上载项目的div

Javascript 删除当前上载项目的div,javascript,jquery,html,Javascript,Jquery,Html,===更新的问题==== 我可以控制未完成状态。事实并非如此。问题是我不知道如何删除当前上传项目的进度条。请检查屏幕截图 我正在使用一个jQuery插件进行多上传,并支持该插件上的HTML5文件API 文件上传工作正常,但我被卡住了,在上传完成后我需要隐藏上传进度条,但不知道如何在没有任何特殊键的情况下从该元素中删除进度条 ===更新的问题==== 为了澄清我的问题,这里有一个截图。第5张和第6张图片处于上载状态。第6张图片即将完成,所以一旦成功上传,我想隐藏图片下方的进度条,但不要触摸其他项目

===更新的问题====

我可以控制未完成状态。事实并非如此。问题是我不知道如何删除当前上传项目的进度条。请检查屏幕截图

我正在使用一个jQuery插件进行多上传,并支持该插件上的HTML5文件API

文件上传工作正常,但我被卡住了,在上传完成后我需要隐藏上传进度条,但不知道如何在没有任何特殊键的情况下从该元素中删除进度条

===更新的问题====

为了澄清我的问题,这里有一个截图。第5张和第6张图片处于上载状态。第6张图片即将完成,所以一旦成功上传,我想隐藏图片下方的进度条,但不要触摸其他项目上的其他进度条

下面是javascript代码(只需搜索函数,其中是
console.log(this.\u id);
行:

var announcements = function () {

    /*** ******************** ***/
    /*** 1.1 MAIN INIT METHOD ***/
    function _init() {
        // Main inits on document ready state
    }

    /*** ********************* ***/
    /*** 1.2 PRIVATE FUNCTIONS ***/

    function _form_upload(){

        // Main form for fallbacks
        var $form_form = $('#form');

        // Standard input file
        var $form_file_input = $('#file_uploader');

        // File POST field name (for ex., it will be used as key in $_FILES array, if you using PHP)
        var $form_file_fieldName = 'image-file';

        // Upload url
        var $form_file_url = '/announcements/form_file_upload/' + $form_file_fieldName;

        // List of available thumbnail previews based on selected files
        var $form_file_list = $('#form_file_list');

        // File upload progress
        var $form_file_progress = $('#form_file_progress');

        // Settings
        var $form_file_autostartOn = true;
        var $form_file_previewsOn = true;

        // Misc
        var isImgFile = function(file) {
            return file.type.match(/image.*/);
        };
        var imagesCount = $form_file_list.length + 1;

        var templateProgress = $form_file_list.find('div.progress').remove().wrap('<div/>').parent().html()
        var template = $form_file_list.html()

        // File uploader init
        $form_file_input.damnUploader({
            // URL of server-side upload handler
            url: $form_file_url,
            // File POST field name
            fieldName:  $form_file_fieldName,
            // Container for handling drag&drops (not required)
            dropBox: $('html'),
            // Expected response type ('text' or 'json')
            dataType: 'JSON',
            // Multiple selection
            multiple: false
        });

        // Creates queue table row with file information and upload status
        var createRowFromUploadItem = function(ui) {
            var $row = $('<div class="col-xs-4"/>').appendTo($form_file_list);
            var $progressBar = $('<div/>').addClass('progress-bar progress-bar-success').css('width', '0%').attr('aria-valuemin', 0).attr('aria-valuemax', 100);
            var $pbWrapper = $('<div/>').addClass('progress').append($progressBar);

            // Defining cancel button & its handler
            /*
            var $cancelBtn = $('<a/>').attr('href', 'javascript:').append(
                    $('<span/>').addClass('glyphicon glyphicon-remove')
                ).on('click', function() {
                    var $statusCell =  $pbWrapper.parent();
                    $statusCell.empty().html('<i>cancelled</i>');
                    ui.cancel();
                    console.log((ui.file.name || "[custom-data]") + " canceled");
                });
            */

            // Generating preview
            var $preview;
            if ($form_file_previewsOn) {
                if (isImgFile(ui.file)) {
                    // image preview (note: might work slow with large images)
                    $preview = $('<img/>').attr('width', 120);
                    ui.readAs('DataURL', function(e) {
                        $preview.attr('src', e.target.result);
                    });
                } else {
                    // plain text preview
                    $preview = $('<i/>');
                    ui.readAs('Text', function(e) {
                        $preview.text(e.target.result.substr(0, 15) + '...');
                    });
                }
            } else {
                $preview = $('<i class="fa fa-image"></i>');
            }

            // Constructing thumbnails markup
            $('<div class="thumbnail"/>').append($preview).appendTo($row);
            $row.find('.thumbnail').append('<button type="button" name="formImageRemove" value="imageRemove" class="btn btn-danger btn-xs" role="button" />');
            $row.find('.thumbnail').prepend(loading);
            $row.find('.uploading').append($pbWrapper);
            $row.find('button').append('<i class="fa fa-fw fa-trash-o" />');

            return $progressBar;
        };

        // File adding handler
        var fileAddHandler = function(e) {
            // e.uploadItem represents uploader task as special object,
            // that allows us to define complete & progress callbacks as well as some another parameters
            // for every single upload
            var ui = e.uploadItem;
            var filename = ui.file.name || ""; // Filename property may be absent when adding custom data

            // We can replace original filename if needed
            if (!filename.length) {
                ui.replaceName = "custom-data";
            } else if (filename.length > 14) {
                ui.replaceName = filename.substr(0, 10) + "_" + filename.substr(filename.lastIndexOf('.'));
            }

            // Show info and response when upload completed
            var $progressBar = createRowFromUploadItem(ui);

            ui.completeCallback = function(success, data, errorCode) {
                // Original filename
                // console.log((this.file.name || "[custom-data]"));
                if (success) {
                    // Add animation class for fadeout
                    $(this).find('.loading').addClass('animated fadeOutDown');
                    console.log(this._id);
                    console.log(ui);
                    // Add some data to POST in upload request once upload finished and new filename retrieved
                    ui.addPostData($form_form.serializeArray()); // from array
                    ui.addPostData('images[]', JSON.parse(data).file_name); // .. or as field/value pair

                } else {
                    console.log('uploading failed. Response code is:', errorCode);
                }
            };

            // Updating progress bar value in progress callback
            ui.progressCallback = function(percent) {
                $progressBar.css('width', Math.round(percent) + '%');
            };

            // To start uploading immediately as soon as added
            $form_file_autostartOn && ui.upload();
        };

        var loading = function(){
            return '<div class="loading">\n\t<div class="uploading animated fadeInUp">\n\t\t<img src="/assets/img/loaders/ajax-loader.gif" />\n\t</div>\n</div>';
        }

        // File Uploader events
        $form_file_input.on({
            'du.add' : fileAddHandler,

            'du.limit' : function() {
                console.error("File upload limit exceeded!");
            },

            'du.completed' : function() {
                console.info('******');
                console.info("All uploads completed!");
            }
        });

    }

    /*** ************************************************** ***/
    /*** 1.3 MAKE PRIVATE FUNCTIONS ACCESSIBLE FROM OUTSIDE ***/
    return {
        init: function () {
            _init();
        },
        form_upload:function(){
            _form_upload();
        }
    };

}();

$(document).ready(function () {
    announcements.init();
});
var通知=函数(){
/*** ******************** ***/
/***1.1主要初始方法***/
函数_init(){
//文档就绪状态下的主初始化
}
/*** ********************* ***/
/***1.2私人职能***/
函数_form_upload(){
//回退的主要形式
var$form_form=$(“#form”);
//标准输入文件
var$form_file_input=$(“#file_uploader”);
//File POST字段名(例如,如果使用PHP,它将用作$\u FILES数组中的键)
var$form_file_fieldName='image file';
//上传网址
var$form_file_url='/announcements/form_file_upload/'+$form_file_fieldName;
//基于选定文件的可用缩略图预览列表
var$form#u file_list=$(“#form#u file_list”);
//文件上载进度
var$form_file_progress=$(“#form_file_progress”);
//背景
var$form\u file\u autostartOn=true;
var$form\u file\u previewsOn=true;
//杂项
var isImgFile=函数(文件){
返回file.type.match(/image.*/);
};
var ImageScont=$form\u file\u list.length+1;
var templateProgress=$form\u file\u list.find('div.progress').remove().wrap(''.parent().html()
var template=$form\u file\u list.html()
//文件上传器初始化
$form\u file\u input.damnUploader({
//服务器端上载处理程序的URL
url:$form\u file\u url,
//文件POST字段名
fieldName:$form_file_fieldName,
//用于处理拖放的容器(不需要)
dropBox:$('html'),
//预期的响应类型('text'或'json')
数据类型:“JSON”,
//多选
多重:假
});
//创建包含文件信息和上载状态的队列表行
var createRowFromUploadItem=函数(ui){
var$row=$('').appendTo($form\u file\u list);
var$progressBar=$('').addClass('progress-bar进度条成功').css('width','0%').attr('aria-valuemin',0.attr('aria-valuemax',100);
var$pbWrapper=$('').addClass('progress').append($progressBar);
//定义取消按钮及其处理程序
/*
var$cancelBtn=$('').attr('href','javascript:')。追加(
$('').addClass('Glyphion Glyphion remove')
).on('单击',函数()){
var$statusCell=$pbWrapper.parent();
$statusCell.empty().html('cancelled');
ui.cancel();
console.log((ui.file.name | |“[自定义数据]”)+“已取消”);
});
*/
//生成预览
var$预览;
如果($form\u file\u previewsOn){
if(isImgFile(ui.file)){
//图像预览(注意:处理大型图像可能速度较慢)
$preview=$('');
ui.readAs('Text',函数(e){
$preview.text(e.target.result.substr(0,15)+'…');
});
}
}否则{
$preview=$('');
}
//构建缩略图标记
$(“”).append($preview).appendTo($row);
$row.find('.thumbnail').append('');
$row.find('.thumbnail').prepend(正在加载);
$row.find('.upload').append($pbWrapper);
$row.find('button')。append('');
返回$progressBar;
};
//文件添加处理程序
var fileAddHandler=函数(e){
//e.uploadItem将uploader任务表示为特殊对象,
//这允许我们定义complete&progress回调以及其他一些参数
//每次上传
var ui=e.uploadItem;
var filename=ui.file.name | |“”//添加自定义数据时可能缺少filename属性
//如果需要,我们可以替换原始文件名
如果(!filename.length){
ui.replaceName=“自定义数据”;
}否则如果(filename.length>14){
ui.replaceName=filename.substr(0,10)+“”+filename.substr(filename.lastIndexOf('.');
}
//上传完成时显示信息和响应
var$progressBar=createRowFromUploadItem(ui);
ui.completeCallback=函数(成功、数据、错误代码){
//原始文件名
//console.log((this.file.name | |“[custom data]”);
如果(成功){
//添加淡出动画类
$(this.find('.loading').addClass('animated fadeOutDown');
console.log(此._id);
控制台日志(ui);
$( "#hide_loading" ).on( "done", function() {
    ( "#hide_loading" ).animate({
        opacity: 0
    }, 5000);
});

if ( success ) {
    $( ".hide_loading").trigger( "loadingfade" );
}
$( "#hide_loading" ).on( "loadingfade", function() {
    $( ".hide_loading" ).animate({
        //put animations here (don't forget cross browser compatibility)
        opacity: 0,
    }, 5000, function() { //this function is called when the animation is completed
        $( "#hide_loading" ).remove();
    });
});