Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Eu sou novato em javascript, comecei faz alguns dias.
Eu estou tentando fazer um sistema de upload múltiplo. Mas o problema está quando depois de adicionado certos arquivos querer adicionar mais posteriormente, pois o input file apaga os anteriores e só fica os novos selecionados. (O upload é feito por php que é o de menos para mim).
Vamos la no meu código.
Formulado:
<form action="" method="post" enctype="multipart/form-data" name="f1" id="f1">
<input id="vfile" type="hidden" value="0" />
<input type="file" name="files[]" id="files1" onChange="teste()" multiple />
<input type="submit" name="button" id="button" value="Submit" />
</form>
<output id="list"></output>
Agora o Javascript:
var globs;
function teste() {
obj = document.getElementById('files1');
vfile = document.getElementById('vfile');
if (parseInt(vfile.value) > 0) {
//Aqui está o problema.
} else {
globs = obj.files;
vfile.value = 1;
}
var f = "";
for (var i = 0; i < obj.files.length; i++) {
var f = f+obj.files[i].name+" size: "+obj.files[i].size+" bytes<br>";
}
var f = f+"<br>Global<br>"
for (var i = 0; i < globs.length; i++) {
var f = f+globs[i].name+" size: "+globs[i].size+" bytes<br>";
}
document.getElementById("list").innerHTML=f;
}
O fato de imprimir os elementos da Global foi um modo de debugar o script.
La no problema eu quero passar os novos valores do "obj.files" para a "globs" que já tem outros valores sem perder os valores atuais da "globs". Já tentei usar push, join e concat, todos sem sucesso.
Espero que possam me ajudar.
Carregando comentários...