我正在尝试为我的表创建过滤器,通过从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错误,但是,我在Loaded函数中添加了一个简单的console.log语句,看来我什至根本没有输入Loaded方法。