首页 > 解决方案 > 使用表时 Null 不是对象错误 (Javascript)

问题描述

我正在尝试为我的表创建一个过滤器,通过从 firebase 数据库读取动态插入表元素。

我有以下输入,我想将其用作我的表的过滤器:

<input type="number" id = "myInput" onkeyup="checkLoad()" placeholder="Search for Job Number">

以下是相应的javascript功能:

function checkLoad(){
  window.addEventListener('load',Loaded,false);
}
// every key up not entering loaded 
function Loaded(){
  var input  = document.getElementById("myInput");
  var filter = input.value.toUpperCase();
  var table = document.getElementById("myTable");
  var tr = table.getElementsByTagName("tr");
  var td, textValue;

  // loop through tr and hide ones which do not match query
  for(var i = 0; i < tr.length; i++){
    td = tr[i].getElementsByTagName("td")[0];
    if (td) {
      txtValue = td.textContent || td.innerText;
      if (txtValue.toUpperCase().indexOf(filter) > -1) {
        tr[i].style.display = "";
      } else {
        tr[i].style.display = "none";
      }
    }
  }
}

现在我并不总是让 checkLoad() 函数触发 onkeyup,我之前的 Loaded 函数称为 Filter(),而 onkeyup 我称为 Filter(),但这给了我 null 错误。

现在我没有收到 Null 错误,但是,我在 Loaded 函数中添加了一个简单的 console.log 语句,看起来我什至根本没有输入 Loaded 方法。

标签: javascripthtml

解决方案


推荐阅读