FormData不是构造函数

vbo*_*tio 1 javascript ajax jquery constructor

我正在尝试制作ajax请求来上传图片.我的问题是当我创建FormData时.我的控制台说"dataForm不是构造函数".

我怎么解决这个问题?

这是我的剧本

$("#new-broadcast-image-static").on("change", function(formData) {
                var formData = new formData();

                // line that console point the error //
                var file = $("#new-broadcast-image-static")[0].files[0];
                formData.set("image", file);

                $.ajax({
                    url: apiUrl + "image/upload",
                    type: 'POST',
                    data: formData,
                    async: false,
                    cache: false,
                    contentType: false,
                    xhrFields: {
                        withCredentials: true
                    },
                    success: function(data) {
                        hashNewBroadcastImage = data.data.identifier;
                        $("#hash-new-broadcast-image-static").val(hashNewBroadcastImage);
                    }
                });
            });
Run Code Online (Sandbox Code Playgroud)

use*_*541 5

资本化: var formData = new FormData();

但是你还想尝试什么呢?您正在重新分配您获得的变量作为参数:

 $("#new-broadcast-image-static").on("change", function(formData) {
      var formData = new formData();
Run Code Online (Sandbox Code Playgroud)

你可能想把它改成类似的东西

 $("#new-broadcast-image-static").on("change", function(e) {
      var formData = new FormData();
Run Code Online (Sandbox Code Playgroud)


Win*_*ber 5

不完全确定,但我认为你有一个大写字母错误,你写的是 formData() 而不是 FormData()

正确的方法:

var formData = new FormData();
Run Code Online (Sandbox Code Playgroud)