Foros del Web » Programando para Internet » Javascript »

Modificar un input

Estas en el tema de Modificar un input en el foro de Javascript en Foros del Web. Hola a tod@s. Me gustaría que me solucionarais un problema que estoy teniendo. LA verdad es que lo que trato de hacer es bastante sencillo ...
  #1 (permalink)  
Antiguo 20/09/2007, 05:48
 
Fecha de Ingreso: julio-2007
Mensajes: 21
Antigüedad: 16 años, 9 meses
Puntos: 0
Modificar un input

Hola a tod@s. Me gustaría que me solucionarais un problema que estoy teniendo. LA verdad es que lo que trato de hacer es bastante sencillo pero no se por qué razón no me está funcionando. Os cuento un poco de qué va la cosa.

Tengo un pequeño formulario html con un input y un buttom. El primero es de tipo "file" y el segundo de tipo "submit". La idea es que un usuario pueda cargar una imagen en el input y que al darle a enviar esa imagen vaya a otra página donde será tratada. Y si el usuario no carga ninguna imagen, lo que se debe enviar al pinchar sobre el botón debe cargarse en el input la dirección que yo desee.

Os pongo el código que seguro lo veréis más calro que con mis explicaciones.

Código:
<body>
   <script>			
     function changeImage(){ //Permite cambiar la imagen
        var rutaImagen = document.getElementById("fileimg").value;
        document.getElementById("img").src = rutaImagen;
     }
			
     function enviar(){ //Envia el formulario
        if (document.getElementById("fileimg").value == ""){
            document.getElementById("fileimg") = "C:\imgdefecto.jpg";
        }
        alert(document.getElementById('fileimg').value)
     }
   </script>

   <img src="C:\imagendefecto.jpg" id='img' height="100" width="100"/>
   
   <input type='file' name='fileimg' id='fileimg' size='50' onchange='changeImage()'/>

   <button name='buttonsubmit' id='buttonsubmit' type='submit' onclick="enviar();">Enviar</button>
</body>
He puesto un alert en la función de enviar para saber cuál es el contenido del input fileimg. Si cargo una imagen aparece la ruta de la imagen que he cargado, pero si no cargo una imagen aparece vacio y esto es precisamente lo que no quiero. Debería aparecer la ruta de la imagen por defecto (C:\imagendefecto.jpg).

Saludos y muchas gracias.
  #2 (permalink)  
Antiguo 20/09/2007, 05:58
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Re: Modificar un input

Hola nemrp

Mira aquí:

http://www.forosdelweb.com/f13/nuevo...5/#post2134854

Saludos,
  #3 (permalink)  
Antiguo 21/09/2007, 00:39
 
Fecha de Ingreso: julio-2007
Mensajes: 21
Antigüedad: 16 años, 9 meses
Puntos: 0
De acuerdo Re: Modificar un input

Muchas gracias JavierB. Si te digo la verdad ese post lo había leído hace tiempo, pero no me acordaba de él. Siento haber abierto un post preguntando algo para lo que ya existía respuesta.

He corregido este problema añadiendo un input oculto al formulario. A este input le doy como valor por defecto la ruta de la imagen por defecto. Antes de enviar el formulario si el input file no está vacío guardo su contenido en el input oculto. En caso de que esté vacío envío el input oculto tal cual está por defecto. En ambos casos deshabilito el input file para que no se envíe y al validarlo en la siguiente página no me salga que está vacío.

Un saludo, muchas gracias por tu ayuda y siento haber repetido un tema.
  #4 (permalink)  
Antiguo 21/09/2007, 00:43
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Re: Modificar un input

Hola de nuevo.

No te preocupes por haber echo una pregunta repetida, a todos nos pasa alguna vez.

Gracias por explicar cómo lo has solucionado, seguro que se servirá a otros con el mismo problema.

Saludos,
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:42.