-5

我正在使用此处描述的 AJAX2

https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest?redirectlocale=en-US&redirectslug=DOM/XMLHttpRequest/Using_XMLHttpRequest#Monitoring_progress

监视 ajax 请求的进度,但我收到以下错误“TypeError:XMLHttpRequest.open 的参数不足。”

谁能帮助为什么会发生此错误?

我的代码是:

                var oReq = new XMLHttpRequest();
                oReq.addEventListener("progress", updateProgress);
                oReq.addEventListener("load", transferComplete);
                oReq.addEventListener("error", transferFailed);
                oReq.addEventListener("abort", transferCanceled);

                oReq.open();

                // ...

                // progress on transfers from the server to the client (downloads)
                function updateProgress (oEvent) {
                  if (oEvent.lengthComputable) {
                    var percentComplete = oEvent.loaded / oEvent.total;
                    console.log(percentComplete+ " percent completed.");
                    // ...
                  } else {
                      console.log(" Unable to compute progress information since the total size is unknown.");
                    // Unable to compute progress information since the total size is unknown
                  }
                }

                function transferComplete(evt) {
                  console.log("The transfer is complete.");
                }

                function transferFailed(evt) {
                  console.log("An error occurred while transferring the file.");
                }

                function transferCanceled(evt) {
                  console.log("The transfer has been canceled by the user.");
                }

此行发生实际错误

oReq.open();
4

2 回答 2

1

open() 方法有三个参数 open('get' , url , true or false or null)

于 2017-05-05T15:04:53.067 回答
1

该文档中的代码示例不是完整的工作代码。它旨在向您展示如何将进度跟踪添加到现有的工作 XMLHttpRequest 代码。

您需要自己填补空白(或者更好的是:构建一个基本的基于 XHR 的脚本,然后向其中添加进度跟踪)。这包括更换:

oReq.open();

真正呼吁open. 请参阅open 的文档。您至少需要提供一个 HTTP 方法和一个 URL(都是字符串参数)。

于 2017-05-05T14:11:46.370 回答