Foros del Web » Programando para Internet » Javascript »

Problema paso de variables [Solucionado]

Estas en el tema de Problema paso de variables [Solucionado] en el foro de Javascript en Foros del Web. Buenas noches! Código HTML: <img src= "catalunya.gif" title=Català alt=error onClick= "idioma.value = 'catala'; Traduir();" > &nbsp <img src= "espanya.gif" title=Castellà alt=error onClick= "idioma.value = 'castella'; ...
  #1 (permalink)  
Antiguo 04/12/2008, 16:11
 
Fecha de Ingreso: febrero-2008
Mensajes: 76
Antigüedad: 16 años, 2 meses
Puntos: 0
Problema paso de variables [Solucionado]

Buenas noches!

Código HTML:
<img src="catalunya.gif" title=Català alt=error onClick="idioma.value = 'catala'; Traduir();">&nbsp
<img src="espanya.gif" title=Castellà alt=error onClick="idioma.value = 'castella'; Traduir();">
            
<input type="hidden" name="idioma" id="idioma" value="catala"> 
...tengo este código, que muestra 2 imagenes y cuando haces click en una de ellas en teoría tiene que poner el valor del input hidden a una cosa o a otra...luego desde la funcion Traducir() segun el valor del input hidden te cambia el texto de la página a un idioma u otro!

Alguien detecta el error que hay?? (y que impide su correcto funcionamiento)

MUCHAS GRACIAS!

Última edición por bERTUZ; 05/12/2008 a las 13:24
  #2 (permalink)  
Antiguo 04/12/2008, 16:32
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Problema paso de variables

Hola:

Usar idioma.value estaría bien si se usara un control del formulario, pero una imagen no es parte de un formulario (al menos el tag img)...

Valdría por ejemplo usar un botón:

<button type="button" onclick="idioma.value = ..."

Y con el tag img: <img onclick="document.getElementById('idioma').value = ..."

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 04/12/2008, 16:45
 
Fecha de Ingreso: febrero-2008
Mensajes: 76
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Problema paso de variables

muchas gracias caricatos por la rapida respuesta! :)

estoy intentando acabar la práctica para poder salir un rato...y no hay manera...

ya he cambiado el tag img --> <img src="espanya.gif" title=Castellà alt=error onClick="document.getElementById('idioma').value = 'castella'; Traduir();">

la funcion que llamo es:

Código HTML:
function Traduir()
            {
                if (this.idioma.value == "catala")
                {
                    document.getElementById("usuari").innerHTML="Usuari:";
                    document.getElementById("contrasenya").innerHTML="Contrasenya:";
                    document.getElementById("button").value="Entrar!";
                }
                else if (this.idioma.value == "castella")
                {
                    document.getElementById("usuari").innerHTML="Usuario:";
                    document.getElementById("contrasenya").innerHTML="Contraseña:";
                    document.getElementById("button").value="Entrar!!";
                }
            }
...sigue dandome error...estará en la función el problema ahora? :S

MUCHAS GRACIAS!

Última edición por bERTUZ; 04/12/2008 a las 17:16
  #4 (permalink)  
Antiguo 04/12/2008, 17:29
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Problema paso de variables

Hola:

Los navegadores suelen informar de los errores, en firefox y opera debes buscar la consola de errores, y en explorer un icono en la parte inferior izquierda dela ventana... ayudaría mucho saber el error...

En traducir() pones this.idioma.value, pero ese this es la imagen, y como te indiqué antes no forma parte del formulario...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #5 (permalink)  
Antiguo 04/12/2008, 17:31
 
Fecha de Ingreso: febrero-2008
Mensajes: 76
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Problema paso de variables

El gran problema del javascript es que no se pueda depurar como por ejemplo el c# en programas como el visual studio...que va de perlas :)

muchisimas gracias por tu atención caricatos...

voy a dar una vueltecilla para que se me aclaren las ideas y en cuanto vuelva me pongo a arreglar lo de this.idioma.value...pero que no sea desde la imagen :S

se puede acoplar una imagen a un botón??

SALUDOS y buen final de jueves!! (pronto el puente!)

PD: por cierto, el error es: this.idioma is undefined!

Última edición por bERTUZ; 04/12/2008 a las 17:36
  #6 (permalink)  
Antiguo 04/12/2008, 17:56
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Problema paso de variables

Hola:

Pues ya nos lleremos... para poner una imagen a un botón se puede usar el tag button, pero los values podrían dar pronlemas, si esperas usarlos...

Tal vez sea más fácil ponerle a ese traducir el parámetro...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #7 (permalink)  
Antiguo 04/12/2008, 20:20
 
Fecha de Ingreso: febrero-2008
Mensajes: 76
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Problema paso de variables

Así he modificado la función:

Código HTML:
function Traduir(idiomaSeleccionado)
            {
                if (idiomaSeleccionado.value == "catala")
                {
                    document.getElementById('usuari').innerHTML="Usuari:";
                    document.getElementById('contrasenya').innerHTML="Contrasenya:";
                    document.getElementById('boto').value="Entrar!";
                }
                else if (idiomaSeleccionado.value == "castella")
                {
                    document.getElementById('usuari').innerHTML="Usuario:";
                    document.getElementById('contrasenya').innerHTML="Contraseña:";
                    document.getElementById('boto').value="Entrar!!";
                }
            }
...y ahora, por fin, me cambia el valor del button, si hago click en la imagen "castella"...pero ni el usuari, ni la contrasenya me los cambia...puede ser problema del .innerHTML?? He provado con value, text...y nada...solo cambia lo que contiene el input text...no el "tag" que hay delante del input text...

MUCHAS GRACIAS!
  #8 (permalink)  
Antiguo 04/12/2008, 20:28
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Problema paso de variables

¿A qué te refieres con el tag detrás del input text? ¿Qué tag estás usando para ese texto?
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #9 (permalink)  
Antiguo 04/12/2008, 20:47
 
Fecha de Ingreso: febrero-2008
Mensajes: 76
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Problema paso de variables

En tag me refería al texto que pongo delante de los inputText para aclarar lo que se tiene que entrar: "Usuario:" y "Contraseña:"

..faltaba poner un id en cada uno para poderlo llamar en la función, esta solucionado...

el último problema que tengo ahora...es que los mensajes de error en caso de introducir usuario o contraseña incorrecta sólo me los traduce si hago click en el botón "Entrar"...como lo podría hacer para que me los traduciera si hago click en las imagenes de seleccion de idioma??

muchISIMAS gracias! :)
  #10 (permalink)  
Antiguo 04/12/2008, 20:56
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Problema paso de variables

Es que no sabemos cómo tienes los alert, cómo está estructurado tu formulario, así que no sabría decirte cómo hacer lo de los alert. Quizás con un switch puedes diferenciar cuál es idioma y mostrar uno u otro mensaje o algo así .
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #11 (permalink)  
Antiguo 04/12/2008, 20:59
 
Fecha de Ingreso: febrero-2008
Mensajes: 76
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Problema paso de variables

Código HTML:
<form> 
            <fieldset>
                <legend id="titol">Iniciar Sessió</legend> 
                    <br>
                    <b id="txtUsuari">Usuari:</b>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp<input type="text" name="usuari" id="usuari"><br>
			              <b id="txtContrasenya">Contrasenya:</b>&nbsp&nbsp&nbsp<input type="password" name="contrasenya" id="contrasenya" style="margin-left:1px;"><br>
                    <br>
                    <input type="button" value="Entrar!" name="boto" id="boto" onClick="comprovarDadesUsuari(usuari, contrasenya, missatge, missatge2, idioma);">
			              <br>
                    <span id="missatge"></span><br>
			              <span id="missatge2"></span>
            </fieldset>            
            
            <br>
            <img src="catalunya.gif" title=Català alt=error onClick="document.getElementById('idioma').value = 'catala'; Traduir(idioma);">&nbsp
            <img src="espanya.gif" title=Castellà alt=error onClick="document.getElementById('idioma').value = 'castella'; Traduir(idioma);">
            
            <input type="hidden" name="idioma" id="idioma" value="catala">
        </form> 
...tengo el form estructurado de esta manera...y sólo me actualiza los mensajes de error en caso de pulsar el boton "Entrar!"...quisiera que se actualizara al hacer click en las imagenes...

...muchisimas gracias por vuestra ayuda, de verdad! :)
  #12 (permalink)  
Antiguo 04/12/2008, 21:04
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Problema paso de variables

Podrías tener en una variable los textos a mostrar en los mensajes de alerta, así, en la función Traducir cambias el valor de esa variable y listo . P.S.: No uses el tag <b> para mostrar el texto relativo al input, usa el tag <label>.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #13 (permalink)  
Antiguo 04/12/2008, 21:11
 
Fecha de Ingreso: febrero-2008
Mensajes: 76
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Problema paso de variables

David el Grande, muchas gracias por tu atención!

...me voy a dormir que son las 4:11 y a las 8:00 empiezo a currar y por la tarde clase!

...mañana me miraré todo esto y lo acabaré de solucionar!

MUCHAS GRACIAS! buenas noches :)
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 18:01.