PHP如何在HTML代码中刷新ProgressBar?

时间:2017-05-31 12:03:14

标签: javascript php jquery ajax

我的index.html中有一个表单,在提交时调用jQuery函数。 这个jQuery函数执行一个AJAX请求来运行PHP脚本。

我希望PHP脚本与HTML交互(目标是刷新进度条)。

我的问题是,在使用AJAX运行PHP脚本时,它正在后台执行。我不希望在PHP处理过程中刷新页面。

我画了一幅画。 I've made a drawing.

我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:0)

我认为您的意思是进度条应该由上传过程填充。你可以这样做

$.ajax({
    xhr: function() {
        var xhr = new window.XMLHttpRequest();

        // Upload progress
        xhr.upload.addEventListener("progress", function(evt){
            if (evt.lengthComputable) {
                var percentComplete = evt.loaded / evt.total;
                $('#progress').text(percentComplete + '%').css('width', percentComplete + '%');
            }
       }, false);

       // Download progress
       xhr.addEventListener("progress", function(evt){
           if (evt.lengthComputable) {
               var percentComplete = evt.loaded / evt.total;
               $('#progress').text(percentComplete + '%').css('width', percentComplete + '%');
           }
       }, false);

       return xhr;
    },
    type: 'POST',
    url: "/",
    data: {},
    success: function(data){
        // Do something success-ish
    }
});