Hola de nuevo.
En primer lugar decirte que la línea:
<input type="button" onclick="alert(this.form.childNodes.length)" />
puedes quitarla. La puse para comprobar si se creaban los campos y se ma olvidó quitarla. Para que funcione solo tienes que usar el control file y cuando selecciones un archivo se creará un campo oculto con el valor del archivo elegido.
Ahora te pongo la función comentada:
Código HTML:
num=0; // variable para poder dar nombres distintos a los campos creados
function anadir(fil) {
obj=fil.form; // averiguo cual es el objeto formulario
num++; // aumento en 1 la variable
// creo un elemento <input>
elem=document.createElement('input');
// le pongo como tipo oculto
elem.type='hidden';
// aquí le voy asignando nombres (oculto1, oculto2, ...)
elem.name='oculto'+num;
// le pongo al campo el valor que tiene el control file
elem.value=fil.value;
// le añado el control al formulario
obj.appendChild(elem);
}
Si necesitas alguna aclaración más no dudes en volver a preguntar. Saludos,