Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/380.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我想筛选表中的值,但有一个错误_Javascript - Fatal编程技术网

Javascript 我想筛选表中的值,但有一个错误

Javascript 我想筛选表中的值,但有一个错误,javascript,Javascript,无法读取未定义的属性“textContent” 我有那个错误,我现在不知道为什么 我是一个初学者,所以可能这是一件非常简单的事情,我不明白 function price() { var table, tr, td, input; table = document.getElementById("myTable"); tr = table.getElementsByTagName("tr"); input = document.getElementById("myI

无法读取未定义的属性“textContent”

我有那个错误,我现在不知道为什么

我是一个初学者,所以可能这是一件非常简单的事情,我不明白

function price() {
    var table, tr, td, input;
    table = document.getElementById("myTable");
    tr = table.getElementsByTagName("tr");
    input = document.getElementById("myInput1");
    for (let i = 0; i < tr.length; i++) {
      td = tr[i].getElementsByTagName("td")[2];
      if ( parseInt(td.textContent) > parseInt(input.value)) {
        tr[i].style.display = "";
      } else {
        tr[i].style.display = "none";
      }
    }       
  }
函数价格(){
var表,tr,td,输入;
table=document.getElementById(“myTable”);
tr=table.getElementsByTagName(“tr”);
输入=document.getElementById(“myInput1”);
for(设i=0;iparseInt(input.value)){
tr[i].style.display=“”;
}否则{
tr[i].style.display=“无”;
}
}       
}
事实上,我想在表中隐藏一行,其中它们的值大于用户写入的值

这是基本HTML:

<body>
    <input type="text" class="fa fa-search" id="myInput1" onkeyup="price()" placeholder="Prix max" title="Ecrivez un prix">
            <table id="myTable">
                <tr>
                    <th>Name</th>
                    <th>Country</th>
                    <th>Price</th>
                </tr>
                <template id="listeDestinations">
                      <tr>
                          <td>{{pays}}</td>
                          <td>{{ville}}</td>
                          <td>{{price}}</td>
                        </tr>
                      </template>
            </table>
    <script src="../javascript/accueil.js"></script>
    <script src="../javascript/Destinations.js"></script>
</body>

名称
国家
价格
{{pays}
{{ville}}
{{price}}

如果您能帮我这一行的话,首先谢谢您将检索html页面中的所有tr,并且您有2个tr标记

在此之后,执行for循环,在for循环的第一个迭代器中您将捕获第一个tr,然后您将在trtr[i]中获得所有td


但是您的第一个tr没有任何td它有th,因为这行td=tr[i].getElementsByTagName(“td”)[2]将返回未定义的

您正在迭代所有tr,但并非所有tr都包含td。所以你的td是未定义的,你不能对它调用函数。尝试使用console.log自己解决此类问题。您是否使用angular?非常感谢我现在理解了我的错误,这是工作