首页 > 解决方案 > 使用 JavaScript 按钮前进

问题描述

我有一个 HTML 按钮,我想在单击时转发到另一个页面

(function() {
  'use strict';
  window.addEventListener('DOMContentLoaded', init, false);

  function init() {
    let url = document.getElementsByClassName("Button__LandingPage");
    url.addEventListener("click", forwardURL, false);

    function forwardURL() {
      location.replace("https://www.w3schools.com");
    }
  };
})();
<button class="Button Button__LandingPage" name="landingPageButton">Home</button>

我在这里错了什么?谢谢你的帮助。

标签: javascripthtmldomcontentloaded

解决方案


getElementsByClassName返回一个集合而不是单个结果。最好使用 idgetElementById代替。但是,在您的情况下,您可以使用getElementsByClassName[0]. 这是一个完整的例子:

(function() {
  'use strict';
  window.addEventListener('DOMContentLoaded', init, false);

  function init() {
    let url = document.getElementsByClassName("Button__LandingPage")[0];
    url.addEventListener("click", forwardURL, false);

    function forwardURL() {
      //location.replace("https://www.w3schools.com");
      console.log("Forward");
    }
  };
})();
<button class="Button Button__LandingPage" name="landingPageButton">Home</button>


推荐阅读