0

我使用了文件上传过程。当我单击浏览按钮时,文件将上传到服务器并显示该文件内容,而无需单击提交按钮。当我上传大文件时,上传会花费更多时间。所以我需要实现进度条。我使用了以下代码:

$.ajax({
    url: "upload.php",
    type: "POST",
    data: formdata,
    processData: false,
    contentType: false,
    beforeSend: function() {
        status.empty();
        var percentVal = '0%';
        bar.width(percentVal)
        percent.html(percentVal);
        $('register').ajaxForm({}); 
    },
    onProgress: function(event){
        var loaded = event.loaded, total = event.total;
        bar.width(parseInt(loaded / total * 100, 10).limit(0, 100) + '%');
    },
    uploadProgress: function(event, position, total, percentComplete) {
        var percentVal = percentComplete + '%';
        bar.width(percentVal)
        percent.html(percentVal);
    },
    complete: function(xhr) {
        bar.width("100%");
        percent.html("100%");
        status.html(xhr.responseText);
    },

但是进度条没有启动。仅在上传完成 100% 后显示。我需要每一步上传百分比。

问题是以下两个功能。这两个函数没有调用。

    onProgress: function(event),
    uploadProgress: function(event, position, total, percentComplete)

我参考了以下有用的链接。

4

0 回答 0