Javascript 在没有Ajax的情况下单击submit时,如何将blob存储在表单中并发送到服务器?
这是我的职责:Javascript 在没有Ajax的情况下单击submit时,如何将blob存储在表单中并发送到服务器?,javascript,jquery,Javascript,Jquery,这是我的职责: FileCropped.prototype.change = function () { var obj = $(this).data("plugin.file-cropped"); var files = obj.$element[0].files; var file; var URL = window.URL || window.webkitURL; var blobURL; if (files && fi
FileCropped.prototype.change = function () {
var obj = $(this).data("plugin.file-cropped");
var files = obj.$element[0].files;
var file;
var URL = window.URL || window.webkitURL;
var blobURL;
if (files && files.length) {
file = files[0];
console.log("I have files");
if (/^image\/\w+$/.test(file.type)) {
blobURL = URL.createObjectURL(file);
obj.$element.val('');
obj.$hidden[0].value = blobURL;
//URL.revokeObjectURL(blobURL);
} else {
window.alert('Please choose an image file.');
}
} else
{
console.log("No files?");
}
}
我正在尝试将blob附加到现有表单输入,但它不起作用。使用chrome调试器,我看到该方法工作正常,并遵循预期的路径,但在提交时,服务器什么也得不到
有什么提示吗
编辑:当然,该函数现在没有值。我可以使用普通的文件输入。目标是能够在将blob附加到表单之前对其进行操作。您可以使用FileReader将文件作为数据URL读取
var fileReader = new FileReader();
fileReader.addEventListener('load', function () {
blobURL = fileReader.result;
obj.$hidden[0].value = blobURL;
});
fileReader.readAsDataURL(file);