JQuery FileReader加载未触发

时间:2018-06-19 13:59:17

标签: javascript jquery kendo-ui asp.net-core-mvc

我上传了多个文件。当我按如下方式上传图像并绑定到模型时,不触发FileReader onload函数。它会跳过并留下火力

这是我的代码

imageSelect: function (e) {
            var dataModel = bindViewModel.selected.attachments;
            var reader = new FileReader();
            reader.onload = function () {
                var uploadImg = new Image();
                uploadImg.onload = function () {
                    for (var i = 0; i < e.files.length; i++) {
                        if (e.files[i].size < 1048576) {
                            var attachmentName = e.files[i].name;
                            var attachment = { id: i, citationId: bindViewModel.selected.id, attachmentName: attachmentName, attachmentUrl: reader.result };
                            dataModel.push(attachment);
                            if (dataModel[0].attachmentName == "" && dataModel[0].attachmentUrl == "") {
                                dataModel.splice($.inArray(dataModel[0], dataModel), 1);
                            }
                            uploadImg.src = reader.result;
                            reader.readAsDataURL(e.files[i].rawFile);
                        }
                        else {
                            app.ShowNotifications("Error", 'The ' + e.files[i].name + ' size greater than 1MB. \r\n Maximum allowed file size is 1MB.', "error");
                        }
                    }
                };
            };
        }

有人可以帮助我吗?

0 个答案:

没有答案