Mil gracias Javier!, con eso ya no suelta error :D
pongo aquí el código final para por si a alguien le sirve:
Código:
<script type="text/javascript" src="scripts/x_core.js"></script>
<script language="javascript">
//Le pasamos como argumento el numero de la capa y el prefijo de la capa
function aniadir(num_capa, pref_capa, pref_imagen)
{
//Creamos una cadena con el valor campo_actual=imagen_1
ultima_num_capa=num_capa-1
string_capa=ultima_num_capa.toString()
campo_actual=pref_capa+string_capa
imagen_actual=pref_imagen+string_capa
//Creamos una cadena con el valor campo_siguiente=imagen_2
string_num_capa2=num_capa.toString()
campo_siguiente=pref_capa+string_num_capa2
imagen_siguiente=pref_imagen+string_num_capa2
//document.write('Actual='+imagen_actual)
//no_existe=document.getElementById(imagen_siguiente)
if(document.getElementById(imagen_actual).value != '' && !document.getElementById(imagen_siguiente))
{
//Si esta lleno el ultimo campo y no existe el siguiente
valor_siguiente=num_capa+1
texto='Imagen '+num_capa+': <input id="'+imagen_siguiente+'" type="file" size="40" onChange="aniadir('+valor_siguiente+',\''+pref_capa+'\',\''+pref_imagen+'\')">'
//Creamos una capa para la posible siguiente imagen
texto= texto+'<div id="'+campo_siguiente+'"></div>'
//Cargamos el codigo HTML en la capa definida para ello
xInnerHtml(campo_actual,texto)
}
}
</script>
<form action="prueba_dinamico.php" method="post" name="imagenes">
Imagen 1:<input id="imagen_1" type="file" size="40" onChange="aniadir(2,'capa_','imagen_')">
<br>
<div id="capa_1"></div>
<input type="submit" name="Submit" value="Enviar">
</form>
Gracias de nuevo y saludos!