Probabilmente c'è anche il guaio che
var inputs = document.getElementsByTagName("*");
è stato dichiarato et valorizzato a zonzo per lo script: gli elementi devono prima esistere (nel tempo) perché un metodo li possa trovare.
Vedi com' ho fatto qua sotto: una funzione attende il comando dal body onload che scatterà al termine del caricamento della pagina.
codice:
<html><head>
<script type="text/javascript">
var eles = [];
var inputs;
function esegui(){
inputs = document.getElementsByTagName("*");
for(var i = 0; i < inputs.length; i++) {
document.getElementById('scrittoio').innerHTML =
document.getElementById('scrittoio').innerHTML + ' ' + inputs[i].name
}
}
</script>
</head>
<body onload="esegui();">
<input type="text" name="name1[]" id="id1[]" />
<input type="text" name="name2[]" id="id2[]" />
<textarea name="name3" id="id3[]">text3</textarea>
<input type="radio" name="radio1" id="radio1" />
<div id="scrittoio"></div>
</body></html>
C'è anche l' impiego di innerHTML in alternativa al document.write per le ragioni che già ti sono state dette dal Mod. .
Ti stamperà ancora degli undefined dacché ("*") mette in lista anche quegli Elementi che il NAME non l' hanno.
Per il resto, posso pure concordare che questo è un forum un po' allo Stronsio, e difatti lo frequento saltuariamente, ma ti assicuro che il "cavicchiandrea" rimane una persona gradevolissima ed un costante seguitore .. segugio .. seguente .... che c'è sempre insomma.