Я использую следующий скрипт для сжатия изображений на стороне клиента перед загрузкой:
https://github.com/fengyuanchen/compressorjs
Я могу загрузить изображения в порядке через Ajax используя следующий код:
// Following is a form with #name and #image input fields and #submit button:
var formData = new FormData();
$('#image').change(function(e) {
var img = e.target.files[0];
new Compressor(img, {
quality: 0.8,
maxWidth: 1600,
maxHeight: 1600,
success(result) {
formData.append('image', result, result.name);
},
});
});
$('#submit').click(function() {
formData.append('name', $('#name').val());
$.ajax({
type: 'POST',
url: 'form-script.php',
data: formData,
contentType: false,
processData: false
}).done(function() {
});
});
Мне нужно загрузить изображение с помощью обычной отправки формы -no Ajax -, но мне не удалось это сделать. Я спрашиваю, как использовать результат в следующем коде, чтобы сжатое изображение было отправлено при отправке формы. В качестве примечания я использую PHP на стороне сервера.
$('#image').change(function(e) {
var img = e.target.files[0];
new Compressor(img, {
quality: 0.7,
maxWidth: 1200,
maxHeight: 1200,
success(result) {
// ??
},
});
});
Спасибо.