есть такая проблема. Вот такой блок:
<a href="#" onclick="loadPicture()">
<div class="load-picture">
<input type="file" id="picture" style="display: none">
</div>
</a>
И вот такой скрипт к нему:
var picture = document.getElementById("picture");
if (picture) {
picture.click();
}
var form = new FormData(),
up_file = picture.files[0];
form.append("upfile", up_file);
form.append("action", "load_description_image");
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function () {
if (this.readyState == 4 && this.status == 200) {
var imgText = '\n[img]' + this.responseText + '[/img]\n';
document.getElementById('description').value += imgText;
}
};
xhttp.open("POST", "start", true);
xhttp.send(form);
При нажатии на ссылку, я скриптом кликаю по файлпикеру, но проблема в том, что скрипт идёт дальше, не дожидаясь окончания диалогового окна выбора файла. Грубо говоря, запрос на сервер идёт ещё до того, как я выбрал этот файл. Как эту проблему можно пофиксить?
Вызывайте отправку формы после того, как файл изменится
var picture = document.getElementById('picture')
picture.addEventListener('change', function (e) {
// код отправки формы
})
После отправки формы нужно занулить значение picture
picture.value = null
чтобы была возможность отправить повторно файл с таким же именем, в противном случае событие change
не сгенерируется
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Добрый день, столкнулся с такой проблемойПри запросе на сервер https://api
На данный вопрос уже ответили:
Нигде не могу найти Java-код/проект видео звонка Google Duo (именно его)Неужели нигде нет разработок такой интересной вещи?