Chicos estoy intentando hacer un formulario dinámico para que suban imagenes a una web pero este código me da un mensaje de error:
document.getElementById(imagen_siguiente).value has no properties (claro ya que aún no se ha definido, esa es la comprobación más bien)
El error está en la linea:
no_existe=document.getElementById(imagen_siguiente ).value
Cuando intento que me devuelva un undefined si aún no se ha establecido un campo para otra imagen.
Aquí teneis el código:
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('Siguiente='+document.getElementById('imagen_siguiente+' Actual='+campo_actual+' Existe_siguiente='+existe_siguiente)
no_existe=document.getElementById(imagen_siguiente).value
if(document.getElementById(imagen_actual).value != '' && no_existe == 'undefined')
{
//Si esta lleno el ultimo campo y no existe el siguiente
valor_siguiente=num_capa+1
texto='Imagen '+num_capa+': <input name="'+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 name="imagen_1" 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>
Si quereis probarlo aquí teneis la URL:
http://nefertec.com/pruebas/bibianblue.com/prueba2.html
Un saludo y gracias por adelantado