JavaScript - Redireccionar con switch / case

   
Vista:

Redireccionar con switch / case

Publicado por Victor (13 intervenciones) el 06/01/2014 21:01:32
Buenas, otra duda de novato

La situación es la siguiente: hago un sólo campo en el que el usuario tiene que introducir un número. Según el número, sucederá una opción u otra. Si no escribe nada, aparece un mensaje de error; si escribe 4, le dirá que esa opción no existe, y si escribe 1, le conduce a una página web.

Todo funciona correctamente salvo el redireccionamiento.
¿Qué estoy haciendo mal? Lo que quiero es que con el número 4 vaya a una página, con el 3 (cuando lo resuelva) irá a otra página, con el 2 lo mismo...
Gracias de antemano!
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<html>
<head>
<script>
function escoger()
{
  var x=document.getElementById("opciones").value;
  switch (x) {
  case "":
  alert("Tienes que escribir una opcion");
  break;
  case "1":
  window.location="http://www.google.com";
  break;
  case "4":
  alert("Esa opción no existe");
  break;
    }
}
</script>
</head>
<body>
<form name="menu" onsubmit="return escoger()" method="post" action="">
Introduce el numero: <input type="text" name="opciones">
<input type="submit" value="Submit">
</form>
</body>
</html>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Redireccionar con switch / case

Publicado por Jose Manuel josema@orbisapientia.com (15 intervenciones) el 07/01/2014 08:42:25
Hola:

Con el código que nos muestras no me funcionaba ninguna opción. Faltaba poner el id al input opciones y cambiar alguna cosilla de la función. Así me ha funcionado a mí:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<html>
<head>
<script type="text/javascript">
function escoger() {
var x=document.getElementById("opciones").value;
switch (x) {
case "": alert("Tienes que escribir una opcion"); break;
case "1": window.location="http://www.google.com"; break;
case "4": alert("Esa opción no existe"); break;
}
 
return false;
}
</script>
</head>
<body>
<form name="menu" onsubmit="escoger();" method="post" action="">
Introduce el numero: <input type="text" name="opciones" id="opciones">
<input type="submit" value="Submit">
</form>
</body>
</html>


Un saludo y que hayas tenido felices fiestas,

José Manuel.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Redireccionar con switch / case

Publicado por Victor (13 intervenciones) el 07/01/2014 21:54:31
Gracias por responder!!
Felices fiestas para ti también...

La verdad es que en este foro siempre respondéis muy rápido y eso se agradece.

En cualquier caso, me sigue sin funcionar ;(
He copiado y pegado tu código, pero sigue sin reconducirme a la web.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Redireccionar con switch / case

Publicado por Jose Manuel josema@orbisapientia.com (15 intervenciones) el 07/01/2014 23:29:33
Hola de nuevo:

Parece que se me pasó un detalle. Ahora lo he probado en varios navegadores y funciona correctamente:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<html>
<head>
<script type="text/javascript">
function escoger() {
var x=document.getElementById("opciones").value;
switch (x) {
case "": alert("Tienes que escribir una opcion"); break;
case "1": window.location="http://www.google.com"; break;
case "4": alert("Esa opción no existe"); break;
}
return false;
}
</script>
</head>
<body>
<form name="menu" onsubmit="return escoger();" method="post" action="">
Introduce el numero: <input type="text" name="opciones" id="opciones">
<input type="submit" value="Submit">
</form>
</body>
</html>


Un saludo,

José Manuel
====================
http://www.orbisapientia.com
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Redireccionar con switch / case

Publicado por Victor (13 intervenciones) el 07/01/2014 23:43:49
Genial...
El return.... cierto
Mil gracias otra vez
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar