Я работаю над службой обмена файлами. Однако я столкнулся с проблемой. По какой-то причине файл выбирается, однако AJAX не читает этот выбор и не загружает файл автоматически. И, таким образом, этот ответ не обрабатывается обратно и не вставлен в DIV на странице.ajax не отправляет форму
HTML + ФОРМА
<div class="file-input-wrapper">
<form method="post" enctype="multipart/form-data" action="upload.xml">
<button class="btn-file-input" id="bt">Select a File to Share</button>
<input type="file" name="file" multiple />
</form>
<br/><br/>
<div id="response"></div>
</div>
JAVASCRIPT
(function() {
var input = document.getElementById("file"),
formdata = false;
function showUploadedItem(source) {
document.getElementById("image-list").innerHTML = "<li><img src='" + source + "' /></li>";
}
if (window.FormData) {
formdata = new FormData();
document.getElementById("bt").style.display = "inline";
}
input.addEventListener("change", function (evt) {
document.getElementById("response").innerHTML = "<div class='uploading'></div>"
var i = 0,
len = this.files.length,
img, reader, file;
formdata = new FormData();
//for (; i < len; i++) {
file = this.files[i];
if (file.type.match(/file.*/)) {
if (window.FileReader) {
reader = new FileReader();
reader.onloadend = function (e) {
var source = e.target.result;
document.getElementById("image-list").innerHTML = "<li><img src='" + source + "' /></li>";
};
reader.readAsDataURL(file);
}
if (formdata) {
formdata.append("file[]", file);
}
}
//}
if (formdata) {
$.ajax({
url: "upload.xml",
type: "POST",
data: formdata,
processData: false,
contentType: false,
success: function (res) {
document.getElementById("response").innerHTML = res;
}
});
}
}, false);
})();
код изначально работал, однако, когда я пытался стилизовать входной файл подал это когда начался ад, и все сломалось, и на данный момент я не уверен, что я делаю неправильно.
Вы также можете посмотреть на код жить по этому адресу: cyogen.com
Что вы хотите сказать? Вышеприведенный код выглядит отлично, и страница, на которую вы смотрели, кажется, работает отлично. –
Я не уверен, что это был ты, кто проголосовал, но если ты позаботился о том, чтобы взглянуть на источник, это не то же самое, что и выше, потому что я его исправил. Это добавляется после того, как входной файл <кнопочного типа = «не отправит» ID = «БТНЫ» стиль = «дисплей: нет;»> – 0111010001110000