Respecto a la pregunta de David, agrego el evento onCgange así:
Código Javascript
:
Ver originalnewfile.onchange = function(){nombreArchivo(this.value,this.id);};
Me reconoce el evento, pero es como si no pasara los parámetros correctamente. Antes tenia un elemento con el atributo onChange="nombreArchivo(this.value,this.id)", y además he comprobado los parámetros que pasa y son correctos.
Y respecto a emprear, como ha comentado David, al cambiar la propiedad innerHTML, se procesa de nuevo todo el contenido, así que ya no me sirve. Y añado los input file desde el parent, para poder mostrar botones personalizados, y poder enviar el formulario (que esta en upload.php) a upload.php, recursivamente.
Pero bueno, el problema que tengo ahora con el evento onChange, ya debe de ser un problema de lógica, ya buscare la solución por mi cuenta.
Muchas gracias a ambos.