Почему этот параметр делает файл всегда в состоянии загрузки, даже если этот файл был полностью загружен - PullRequest
0 голосов
/ 04 декабря 2011

Вот мои настройки.Я настроил upload_success_handler, чтобы файлы всегда были в состоянии загрузки, даже если этот файл был полностью загружен.Что мне делать?

        var settings = {
        flash_url : "/js/upload/swfupload.swf",
        upload_url: "/includes/imgupload.php",
        post_params: {"PHPSESSID" : "<?php echo session_id(); ?>","type":"post"},
        file_size_limit : "5 MB",
        file_types : "*.jpeg;*.jpg;*.png;*.gif",
        file_types_description : "JPEG Images;JPG Images;PNG Images;GIF Images;",
        file_upload_limit : 10,
        file_queue_limit : 10,
        custom_settings : {
            progressTarget : "fsUploadProgress",
            cancelButtonId : "btnCancel"
        },
        debug: false,
        //Button
        button_image_url: "images/TestImageNoText_65x29.png",
        button_width: "65",
        button_height: "29",
        button_placeholder_id: "btn-upload",
        button_text: '<span class="theFont">chose pictures</span>',
        button_text_style: ".theFont { font-size: 12; }",
        button_text_left_padding: 8,
        button_text_top_padding: 3,

        //The event handler functions are defined in handlers.js
        file_queued_handler : fileQueued,
        file_queue_error_handler : fileQueueError,
        file_dialog_complete_handler : fileDialogComplete,
        upload_start_handler : uploadStart,
        upload_progress_handler : uploadProgress,
        upload_error_handler : uploadError,
        //upload_success_handler : uploadSuccess,
        upload_success_handler : function(file,data){
            document.getElementById("holder").innerHTML +="<li><img class='thumb' src='/includes/thumbnail.php?id="+data+"' style='max-width:400px;'></img>";
            document.getElementById("holder").innerHTML +="<br><div>Pic"+item+"</div></li>";
            parent.addImg(item,data);
            item+=1;
            setStats(file,COMPLETE);
        },
        upload_complete_handler : uploadComplete,
        queue_complete_handler : queueComplete  // Queue plugin event
        };

Ответы [ 2 ]

0 голосов
/ 04 декабря 2011

Ну, я нашел эти строки в функции uploadsuccess () в handler.js:

    var progress=new FileProgress(file,this.customSettings.progressTarget);
progress.setComplete();
progress.setStatus("Complete.");

Я скопировал их в свою собственную функцию-обработчик, и теперь она работает.

0 голосов
/ 04 декабря 2011

setStats () ожидает 1 аргумент, объект Stats, но вы предоставляете объект File.

Кроме того:

    document.getElementById("holder").innerHTML +="<li><img class='thumb' src='/includes/thumbnail.php?id="+data+"' style='max-width:400px;'></img>";
    document.getElementById("holder").innerHTML +="<br><div>Pic"+item+"</div></li>";

Нет закрывающего тега для. Вам также следует объединить обе строки, иначе от браузера будет зависеть, какой результат вы получите:

document.getElementById("holder").innerHTML +=
  "<li><img class='thumb' src='/includes/thumbnail.php?id="+data+"' \
            style='max-width:400px;'/>\
            <br><div>Pic"+item+"</div></li>";

Наконец: что такое item и parent.addImg ()?

...