Upload De Multiplas Imagens
#1
Posted 06/10/2007, 00:52
assim, podendo adicionar ate 5 arquivos ou qlqr numero de arquivos em 1 pagina, sem precisar adicionar de 1 em 1.. queria apenas isso
um ajax que quando eu clickasse em "adicionar outro arquivos"
ele escrevesse o campo:
"Arquivo: <input type="file" name="arquivo[]"><br>"
nunca trabalhei com ajax, entao.. ja viu né..
#2
Posted 06/10/2007, 05:40
Para isso, utilize createElement.
Flws...
Até mais
#3
Posted 08/10/2007, 14:17
Não precisa necessariamente ser Ajax, simplesmente Javascript você faz isso.
Para isso, utilize createElement.
Flws...
tu nao tem algo pronto que sirva como exemplo nao?
#4
Posted 08/10/2007, 14:38
<script type="text/javascript"> function addFileField() { document.getElementById("fields").innerHTML += "<input type=\"file\" name=\"file[]\" /><br />"; } </script>
Onde o id fields que você vai jogar os inputs, eu fiz com uma <div>.
Flws...
Até mais
Edição feita por: Paulo André, 08/10/2007, 14:39.
#5
Posted 08/10/2007, 15:48
<script type="text/javascript"> <script type="text/javascript"> function addFileField() { document.getElementById("div_file").innerHTML += "<input type=\"file\" name=\"imagem[]\" size=\"35\">"; } </script>
<li><div id="div_file"><input type="file" name="imagem[]" size="35"></div></li> <li onclick="addFileField()">Adicionar outra Imagem</li>
porem estou com um problema, quando clicko para adicionar a otura imagem, o campo de cima perde o valor atual... queria manter o valor...
tipo ele perde os valores, seu eu escolhe 1 arquivo, e deopis clicko em adicionar outro arquivo...
Edição feita por: SlyX, 08/10/2007, 16:01.
#6
Posted 08/10/2007, 16:00
Faz assim:
function addFileField() { var ff = document.createElement("input"); ff.type = "file"; ff.name = "file[]"; document.frm.appendChild(ff); }Que irá adicionar em um form de nome frm seguindo meu exemplo.
Foi mal, depois que pensei melhor.
******* EDITADO *******
Para a quebra de linha você pode adicionar esta linha:
document.frm.appendChild(document.createElement("br"));
Flws...
Até mais
Edição feita por: Paulo André, 08/10/2007, 16:09.
#7
Posted 08/10/2007, 16:25
#8
Posted 08/10/2007, 16:30
Desenha ai pra mim porque não entendi não.. rs... Até mais
#9
Posted 08/10/2007, 16:46
o input file, esta dentro de um LI... gostaria que os outros que aparecem, aparecessem dentro do LI, entende?
no metodo antigo eu poderia fazer:
document.getElementById("fields").innerHTML += "<li><input type=\"file\" name=\"file[]\" /></li>";
<? session_start(); require "../include/topo.inc.php"; ?> <script type="text/javascript"> function addFileField() { var ff = document.createElement("input"); ff.type = "file"; ff.name = "file[]"; document.form1.appendChild(ff); document.form1.appendChild(document.createElement("br")); } </script> <script src="../include/data.js" type="text/javascript"></script> <form name="form1" id="form1" enctype="multipart/form-data" action="editar.php?tipo=<?=$acao;?>" method="post"> <div id="en"> <ul> <li><h2>Imagem:</h2></li> <li><div id="div_file"><input type="file" name="imagem[]" size="35"></div></li> <li><a onclick="addFileField()">Adicionar outra Imagem</a></li> </ul> </div> <div id="botao"> <input type="submit" class="buttom" value="Salvar" /> </div> </form> <? include("../include/rodape.inc.php"); ?>
Edição feita por: SlyX, 08/10/2007, 16:46.
#10
Posted 08/10/2007, 16:51
function addFileField() { var li = document.createElement("li"); var ff = document.createElement("input"); ff.type = "file"; ff.name = "file[]"; document.frm.appendChild(li); li.appendChild(ff); }
Flws...
Até mais
Edição feita por: Paulo André, 08/10/2007, 16:52.
#11
Posted 08/10/2007, 17:18
Além do que, tem que coloca a li dentro da ul, então tem que usar ou getElementById (se ela tiver um id), ou getElementsByTagName('ul') ... ou uma mescla dos 2.
Yeah I do have some stories, and it's true I want all the glory ...
#12
Posted 08/10/2007, 22:20
Acho que vai dar problema de referência... você teria que dar appendChild no input na LI antes de dar o appendChild no form ...
Além do que, tem que coloca a li dentro da ul, então tem que usar ou getElementById (se ela tiver um id), ou getElementsByTagName('ul') ... ou uma mescla dos 2.
ou seja: cheguei a conclusao q nao sei nada de js =/
amiguinhos?
#13
Posted 09/10/2007, 13:35
function addFileField() { var li = document.createElement("li"); var ff = document.createElement("input"); ff.type = "file"; ff.name = "file[]"; li.appendChild(ff); document.getElementById('suaUL').appendChild(li); }
Yeah I do have some stories, and it's true I want all the glory ...
#14
Posted 09/10/2007, 14:50
<script type="text/javascript"> function addFileField() { var li = document.createElement("li"); var ff = document.createElement("input"); ff.type = "file"; ff.name = "imagem[]"; ff.size = "35"; li.appendChild(ff); document.getElementById('div_file').appendChild(li); } </script>
<ul id="ul_arquivo"> <li><h2>Imagem:</h2></li> <div id="div_file"> <li><input type="file" name="imagem[]" size="35"></li> </div> <li><a onclick="addFileField()">Adicionar outra Imagem</a></li> </ul>
achei muito legal essa parte de "DOM" vou dar uma estudada... para iniciar bem no ajax
tinha ocorrido um erro no iexplorer, acho que devido a interacao com o css(ie6) ..
entao eu alterei
<ul id="div_file"> <li> <input type="file" name="imagem[]" size="35"> </li> </ul> <ul> <li><a onclick="addFileField()">Adicionar outra Imagem</a></li> </ul>
#15
Posted 09/10/2007, 14:57
<a href="pagina_qualquer.htm" onclick="function();return false">Texto</a> <!--ou--> <button onclick="function();">Texto</button>
Da forma que você colocou gera erros porque não é nem um link (porque não tem href) e nemuma ancora (porque não tem name)... ok?!
Yeah I do have some stories, and it's true I want all the glory ...
1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)