С этим кодом я хочу перетащить изображение.
Когда я опускаю, для каждого элемента я вызываю с помощью ajax страницу php, чтобы создать запись в db.
Ajax возвращает мне data.object, чтобы поместить элемент в мою HTML-страницу.
У меня есть этот JS-код для управления перетаскиванием файлов с компьютера ...
var listaId = new Array();
function dropHandler(ev) {
// Prevent default behavior (Prevent file from being opened)
ev.preventDefault();
var div = document.getElementById('raccoltaFile');
var percorso = div.getAttribute('data-percorso');
var id = div.getAttribute('data-id');
if (ev.dataTransfer.items) {
// Use DataTransferItemList interface to access the file(s)
for (var i = 0; i < ev.dataTransfer.items.length; i++) {
// If dropped items aren't files, reject them
if (ev.dataTransfer.items[i].kind === 'file') {
var file = ev.dataTransfer.items[i].getAsFile();
var foto = new FormData();
foto.append('fotoOggetto', file);
foto.append('nome', file.name);
foto.append('percorso', percorso);
foto.append('idSottocat', id);
$.ajax({
url: '../php/model.php?az=dragDropImage&id='+id+"&percorso="+percorso,
data:foto,
processData:false,
contentType:false,
type: 'POST',
dataType: 'json'
})
.done(function(data){
if(data.doc_id) {
$("#raccoltaFile").append("<div class='row' style='border-bottom: solid 2px grey'><div class='col-3'><img class='img-thumbnail' src='"+data.doc_url+"' /></div><div class=col-4>"+data.doc_nome_file+"</div><div class='col-3'><button class='btn btn-danger' onClick='cancellaFotoProvvisoria()'>Elimina</button></div></div>");
listaId.push(data.doc_id);
} else {
alert("Hai inserito un'immagine fuori dai parametri accettati");
}
})
.fail(function(){
alert("Qualcosa è andato storto.");
});
}
}
}
alert(listaId);
}
Первый идентификатор элемента, который я перетаскиваю, не входит в массив listaId, а второй да.
Вы говорите, почему?