首页 > 解决方案 > 为什么javascript上的代码innerHTML不起作用?

问题描述

有 HTML 代码和 JavaScript 代码

<script>
   function Stock_Listing() {
      document.getElementById("stock_menu").innerHTML = "hi";
   }
</script>

<ul id="stock_menu" onload="Stock_Listing()"></ul>

但我的页面上什么都没有。

你能告诉我为什么不工作吗?

并且也无法使用 insertAdjacentHTML。

<script>
    function Stock_Listing() {
       document.getElementById("stock_menu").insertAdjacentHTML = ("afterbegin", "hi");
    }
</script>

<ul id="stock_menu" onload="Stock_Listing()"></ul>

标签: javascripthtml

解决方案


在您的onLoad函数中,您声明了一个函数,但从不调用它。您不需要第二个功能:

window.onload = function() {
  document.getElementById("stock_menu").innerHTML = "hi";
}
    <ul id="stock_menu"></ul>

或者至少,您需要调用第二个函数:

   window.onload = function() {
      function Stock_Listing() {
         document.getElementById("stock_menu").innerHTML = "hi";
      }
      
      Stock_Listing();
   }
<ul id="stock_menu"></ul>

两种方法都有效,我更喜欢第一种,因为您并不真正需要该Stock_Listing功能。


推荐阅读