Изменить событие onclick - PullRequest
       42

Изменить событие onclick

0 голосов
/ 17 марта 2020

У меня есть кнопка, которая перенаправляет пользователя на предыдущую страницу:

<button id="back" onclick="location.href='..'">Back</button>

И я хочу изменить его местоположение на две страницы раньше.

Что не так с этим кодом?

document.getElementById("back").setAttribute("onclick", function(){window.location.href='../../'});

или этот

document.getElementById("back").addEventListener("click", "location.href='../../'");

или этот

document.getElementById("back").onclick="location.href='../../'";

по некоторым причинам ни один из них не работает должным образом, и моя кнопка остается неизменной ... Google не делает помощь!

Ответы [ 5 ]

2 голосов
/ 17 марта 2020

Попробуйте

document.getElementById("back").addEventListener("click", function(){
  window.location.href='../../';
});
1 голос
/ 17 марта 2020
  1. setAttribute для onclick не работает в некоторых браузерах. Читайте об этом здесь .

  2. Синтаксис для addEventListener это

target.addEventListener(type, listener [, options]);

Читайте об этом здесь

Итак, рабочий код

document.getElementById("back").addEventListener("click", function(){
  window.location.href='../../';
});
0 голосов
/ 17 марта 2020

Вы можете использовать это windows.history.go(-2);:

<button onclick="windows.history.go(-2)">Back</button>

или сохранить адрес предыдущих страниц и ссылки на них.

0 голосов
/ 17 марта 2020

Я думаю, что это лучше

document.querySelector("#back").addEventListener("click", () => window.history.go(-2));
0 голосов
/ 17 марта 2020

Вы можете сделать, как показано ниже

<button id="back" onClick="GoBack()">Back</button>

<script>
   function GoBack(){
     window.location.href='../../';
   }
</script>

И если вы хотите go вернуться на предыдущую страницу, вы можете сделать, как показано ниже

<button id="back" onClick="GoBack()">Back</button>

    <script>
       function GoBack(){
         window.history.go(-2);
       }
    </script>
...