Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

paulo.cez

Mudar type de todos os campos input em Array

Recommended Posts

Boa tarde Pessoal!!!

 

Andei procurando muito e não consegui achar nada muito explicativo...

 

É o seguinte tem um formulário com vários campos em array gerado por um script de loop e Tenho 2 Radio button onde ao escolher gostaria que todos os campo no tipo FILE alterassem para o TIPO TEXT, consigo fazer com um campo, mais com o restante estão penando..

 

esse é o meu form:

 

<form method="POST" action = "gnrexml3.php" enctype="multipart/form-data">
<?php
for( $i = 0; $i <5; ++$i ){
echo '<div id="input">';
echo 'XML '.$a.': <input type="file" name="file[]" value="escolha um arquivo"/>';
echo '</div>';
echo 'Valor: <input type="text" size ="5" name="valor[]" value=""/>Data: <input type="date" name="data[]" value=" " /> ';
echo "<br>";
}
?>
<input type="submit" value="enviar" name="enviar" />
</form>
<label>
<input onchange="muda_file();" type="radio" name="radio" id="file" value="select" />Selecionar arquivos
<input onchange="muda_input();" type="radio" name="radio" id="text" value="select" />Digitar arquivo
</label>
########################### Script java script ###########################
function muda_file(){
for (i=0; i<5; i++){
ocument.getElementById('input').innerHTML = 'XML <input type="text" name="file[]" id="file[]" value=""/>';
}
############################################################3
Quando eu Executo ele só muda 1 campo, eliminando todos os outros...
Se alguém puder me ajudar eu agradeço e muito...

Compartilhar este post


Link para o post
Compartilhar em outros sites

o document.getElementById retorna um elemento com o id especificado

se você quer selecionar todos os inputs, use document.getElementByTagName

var inputArray = document.getElementsByTagName('input');
for(var i = 0; i<inputArray.length; i++){
  inputArray[i].type = 'text';
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

o document.getElementById retorna um elemento com o id especificado

se você quer selecionar todos os inputs, use document.getElementByTagName

var inputArray = document.getElementsByTagName('input');
for(var i = 0; i<inputArray.length; i++){
  inputArray[i].type = 'text';
}

 

Ola Vinifoncesa!

 

Até funcionou, mais mudou todos os campos, e eu só gostaria de mudar os campos que inicialmente estão declarados como tipo File, ao clicar no radio, e se eu clicar novamente em outro radio volta como era antes.

 

Agradeço desde já sua ajuda..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo, consegui fiz a mudança abaixo:

 

document.getElementsByclassname('file')

 

e mudei somente as inputs que tinham essa classe definida...

 

Seu script foi de muita ajuda...

 

Muito obrigado!!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.