【发布时间】:2020-11-07 22:49:56
【问题描述】:
我知道出现此错误是因为这里的“cardTxt”不是字符串。我通过检查 typeof 语法就知道了。但是为什么这不能是一个字符串。我无法找到。我在这里使用引导程序进行样式设置。有人请建议我。我真的被困在里面了。
let search = document.getElementById('searchTxt');
search.addEventListener("input", function(){
let inputVal = search.value.toLowerCase();
let noteCards = document.getElementsByClassName('noteCard');
Array.from(noteCards).forEach(function(element){
let cardTxt = element.getElementsByTagName("p")[0].innerText;
if(cardTxt.includes(inputVal)){
element.style.display = "block";
}
else{
element.style.display = "none";
}
})
【问题讨论】:
-
如果您也发布
html代码,这将有助于轻松找到问题 -
"我知道出现这个错误是因为这里的 "cardTxt" 不是字符串。" 不,错误与 无法获取 ' 有关innerText' 因为您要查找的元素未定义(即错误消息!)...换句话说,
element.getElementsByTagName("p")[0]没有返回任何内容。但是如果没有看到正在处理的 HTML,我们无法帮助您找出为什么找不到它。
标签: javascript arrays json typeerror