Soy un novato en javascript y actualmente estoy atascado en este problema. Necesito redirigir a otra página según la cantidad de ciertos movimientos. por ejemplo: si la cantidad de movimientos después de encontrar todos los pares está entre 4 y 8, será redirigido a la página 1 para ver su resultado, 10 a 16 está en la página 2 y así sucesivamente, pero mi código con respecto al resultado aún va a la página 1. Aquí está mi código js:
function validate() { var clickHere = document.getElementById("terms"); if(clickHere.checked){ if(counterVal >= 4 || counterVal <=8){ location.replace("https://www.w3schools.com/js/") } else{ location.replace("https://javascript.info/") } }else{ alertify.error('Click the checkbox first.') }He estado probando diferentes métodos para resolver este problema, pero no tuve suerte. Gracias por ayudar.
La forma más sencilla de usar JavaScript para redirigir a una URL es establecer la propiedad de ubicación en una nueva URL usando window.location.href . El código JavaScript tiene este aspecto: window.location.href = 'https://ExampleURL.com/'; es una propiedad que le dice qué URL se está viendo actualmente. Al establecer un nuevo valor, le está diciendo al navegador que cargue esa nueva URL, similar a lo que sucedería si un usuario hiciera clic en un enlace. Tu función debería verse así:
function validate() { var clickHere = document.getElementById("terms"); if(clickHere.checked){ if(counterVal >= 4 || counterVal <=8){ window.location.href = "https://www.w3schools.com/js/" } else{ window.location.href ="https://javascript.info/" } }else{ alertify.error('Click the checkbox first.') }De su pregunta, ha mencionado, for example: if the number of moves after you find all the pairs are between 4 - 8, you will be redirected to page 1 to see your result, 10 - 16 is on page 2 and so on, but my code regarding of result still goes to page 1
Como mencionó, countVal está entre 4 y 8, entonces lo hará para este enlace https://www.w3schools.com/js/
Pero en esto, si la condición que ha mencionado como counterVal <=4 . La condición será verdadera si countVal es más de 8, ese es el problema.
if(counterVal >= 4 || counterVal <=8){Tienes que reescribirlo así
if(counterVal >= 4 && counterVal <=8){Espero que esto sea útil.
El código debe ser
if(counterVal >= 4 && counterVal <=8){ window.location.href = "https://www.w3schools.com/js/1" }else if(counterVal >= 10 && counterVal <=16){ window.location.href = "https://www.w3schools.com/js/2" }else{ location.replace("https://javascript.info/") }