Foros aprenderaprogramar.com

Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: JAntonio en 02 de Junio 2020, 04:43

Título: TypeError: window.location.href is not a function Cómo redireccionar Javascript
Publicado por: JAntonio en 02 de Junio 2020, 04:43
Buenos días, estoy creando una página con un formulario. Entro un texto en un input y lo comparo con una variable con Javascript. Si coinciden, quiero reenviar la página a otra url pero no logro conseguirlo. Si me pueden ayudar se lo agradecería mucho.
Aquí está mi código:

Código: [Seleccionar]
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="IE=8,9,11">
<title>Registro</title>
<link href="../CSS/codigo.css" rel="stylesheet" type="text/css">
<style type="text/css">
body {
    background-image: url(../Imagenes/puzzle.png);
}
</style>
</head>

<body>

<form id="formulario2" name="formulario2" method="post" action="#">
  <table class="conten" border="0" cellpadding="0" cellspacing="0">
  <tbody>
    </tbody>
  <tbody>
    <tr>
      <td width="20%">&nbsp;</td>
      <td width="25%">&nbsp;</td>
      <td width="35%">&nbsp;</td>
      <td width="20%">&nbsp;</td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td height="64">&nbsp;</td>
      <td bgcolor=#3F3C3C><div class="container1"><strong>Código:</strong></div></td>
      <td bgcolor=#3F3C3C><div class="container1">
        <label for="nick"></label>
        </div>
        <input class="container2" type="text" name="codigo" id="codigo" size="20" maxlength="20" required /></td>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td height="19">&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td height="74">&nbsp;</td>
      <td colspan="2"><div class="container1">
        <input type="submit" name="btn_continuar" id="btn_continuar" value="Continuar" onClick="validarcodigo()">
      </div></td>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td colspan="2">
</td>
      <td>&nbsp;</td>
    </tr>
  </tbody>
  <tbody>
  </tbody>
  </table>
</form>

<script type="text/javascript">
  function validarcodigo()
       {
         var valor = 'NEFERTITI';
         var codigo = document.getElementById("codigo").value;

  if( codigo == null || codigo.length == 0 || /^\s+$/.test(codigo) )
    {
alert("Haz el favor de introducir los datos");
            return false;
            }
         else
          {
         if (valor==codigo)
          {
           alert("Contraseña correcta");
           window.location.href('https://www.google.es/'); /*<---- No me redirecciona*/
           return true;
          }
          else
          {
           alert("Introduzca la contraseña correcta");
           return false;
          }
         }
      } 
</script>

</body>
</html>
Título: Re:Validar formulario y redireccionar con Javascript
Publicado por: Ogramar en 02 de Junio 2020, 19:12
Buenas JAntonio, y bienvenido ya que veo que es tu primer mensaje en los foros. Lo primero que recordamos es que para escribir en los foros es importante seguir las normas que se indican en https://aprenderaprogramar.com/foros/index.php?topic=1460.0 (revisar las indicaciones: cómo poner los títulos de los temas, si es un ejercicio código de la entrega del curso, forma correcta de insertar código, etc.). El código no está correctamente insertado con las etiquetas code (no te preocupes, ya lo corregiré yo. Si tienes dudas sobre cómo escribir en los foros escribe una consulta en el foro "Comunidad" exponiendo la duda para intentar solucionarla.)

Sobre la duda que planteas la forma correcta de redireccionar es window.location = "https://aprenderaprogramar.com" o con la url que quieras, te sobra el href, por ello tienes un TypeError: window.location.href is not a function

En https://aprenderaprogramar.com/index.php?option=com_content&view=category&id=78&Itemid=206 tienes un tutorial JavaScript donde puedes ampliar información.

Salu2