#javascript #html #jquery
Вопрос:
У меня есть функция отправки, которую пользователь может выбрать, обновлять свою фотографию или нет. Если пользователь решил не обновлять свое изображение, текущее полученное значение будет отправлено в функцию утверждения. У меня нет проблем, когда пользователь хочет обновить, но у меня есть проблемы с тем, когда пользователь не хочет обновлять изображение. Я не могу получить текущее значение полученного значения в своей функции отправки.
Это то, что я пробовал. Как передать значение src в переменную pictureData
, если пользователь решил не обновлять свое изображение?
$(document).ready(function() {
var isImageChosen = false;
$(".choose").click(function() {
$("#picture").click();
isImageChosen = true;
});
getPhoto();
$("#approve").click(function() {
var pictureData = $('#picture')[0].files[0];
if (!isImageChosen) {
pictureData = $("#picture_photoViewer").attr('src');
alert(pictureData);
}
let formData = new FormData();
formData.append('picture', pictureData);
for (var pair of formData.entries()) {
console.log(pair[0] ', ' pair[1]);
}
});
});
const getPhoto = () => {
let photo = 'http://hd.wallpaperswide.com/thumbs/beast_2-t2.jpg';
$("#logo").append(`<img id="picture_photoViewer" src="${photo}" width="100" height="100">`);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="row">
<div class="text-center">
<div class="form-group" id="logo"></div>
<button type="button" class="btn btn-primary ml-4 choose">Choose</button>
<input type="file" id="picture" oninput="picture_photoViewer.src=window.URL.createObjectURL(this.files[0])" hidden>
</div>
</div>
<br>
<button type="button" id="approve" class="btn btn-success">Submit</button>
Ответ №1:
Вы можете установить статус, нажал ли пользователь кнопку «Выбрать» или нет, введя новую переменную.
Вот мое решение:-
$(document).ready(function() {
var isImageChosen = false;
$(".choose").click(function() {
$("#picture").click();
isImageChosen = true;
});
getPhoto();
$("#approve").click(function() {
var pictureData = $('#picture')[0].files[0];
if (!isImageChosen){
pictureData = $("#picture_photoViewer").attr('src');
alert(pictureData);
}
let formData = new FormData();
formData.append('picture', pictureData);
for (var pair of formData.entries()) {
console.log(pair[0] ', ' pair[1]);
}
});
});
Комментарии:
1. спасибо вам большое. Я понимаю это 🙂