Hola daviccin,
si lo que necesitás hacer es que tras presionar un botón se vayan agregando campos del tipo file lo que tenés que hacer es que cuando el usuario pulse el botón en cuestión, se escriba el código HTML del file dentro de un layer mediante innerHTML. Te dejo un código de ejemplo, espero que te sirva :)
Código HTML:
<script language="javascript" type="text/javascript">
var numeroDeInput = 0;
function AdjuntarOtroArchivo() {
numeroDeInput++;
nombreDelCampo = "archivo_"+numeroDeInput;
nuevoCampo = "<input type=\"file\" name=\""+nombreDelCampo+"\" /><br>";
document.getElementById('layer_archivos').innerHTML += nuevoCampo;
}
</script>
Código HTML:
<input type="button" onClick="AdjuntarOtroArchivo();" value="Adjuntar otro archivo">
<div id="layer_archivos">
<input type="file" name="archivo_0" /><br>
</div>