返回顶部
首页 > 资讯 > 精选 >原生js中怎么用DOM操作table及表格搜索功能
  • 444
分享到

原生js中怎么用DOM操作table及表格搜索功能

2023-06-27 09:06:21 444人浏览 安东尼
摘要

本篇内容介绍了“原生js中怎么用DOM操作table及表格搜索功能”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!DOM中table的便捷操作

本篇内容介绍了“原生js中怎么用DOM操作table及表格搜索功能”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

DOM中table的便捷操作

tBobies(数组) tHead tFoot rows(行) cells(单元格)
<body>   <table border="1" id="table1" width="500">       <thead>            <tr>               <td>ID</td>                <td>姓名</td>                <td>年龄</td>            </tr>        </thead>        <tbody>            <tr>                <td>1</td>                <td>张三</td>               <td>23</td>            </tr>        </tbody>   </table>    <script>        window.onload = function () {            var oTable = document.getElementById('table1')            alert(oTable.getElementsByTagName('tbody')[0].getElementsByTagName('tr')[0].getElementsByTagName('td')[1].innerhtml)            alert(oTable.tBodies[0].rows[0].cells[1].innerHTML)        }    </script></body>

隔行变色、高亮

<body>
   <table border="1" id="table1" width="500">
       <thead>
           <tr>
              <td>ID</td>
              <td>姓名</td>
               <td>年龄</td>
          </tr>
      </thead>
      <tbody>
           <tr>
              <td>1</td>
              <td>张三</td>
               <td>23</td>
           </tr>
           <tr>
               <td>2</td>
               <td>里斯</td>
               <td>24</td>
           </tr>
           <tr>
              <td>3</td>
               <td>王武</td>
               <td>25</td>
           </tr>
       </tbody>
   </table>
   <script>
       window.onload = function () {
           var oTable = document.getElementById('table1');
           var oldColor = '' //原来的背景颜色
           alert(oTable.tBodies[0].rows.length)
           for(var i = 0; i < oTable.tBodies[0].rows.length; i++){
               oTable.tBodies[0].rows[i].onmouseover = function(){
                   oldColor = this.style.background; //将原来的背景颜色保存起来
                   this.style.background = 'yellow'
               }
               oTable.tBodies[0].rows[i].onmouseout = function(){
                   this.style.background = oldColor
               }
               if(i % 2){ // i%2为0时,条件为假
                   oTable.tBodies[0].rows[i].style.background = "#999"
               }else{
                   oTable.tBodies[0].rows[i].style.background = ""
               }
           }
       }
   </script>
</body>

添加行、删除行

<body>
   <input type="text" id="name">
   <input type="text" id="age">
   <input type="button" id="btn" value="添加">
   <table border="1" id="table1" width="500">
       <thead>
           <tr>
               <td>ID</td>
               <td>姓名</td>
               <td>年龄</td>
               <td>操作</td>
           </tr>
       </thead>
       <tbody></tbody>
   </table>
   <script>
       window.onload = function () {
           var oTable = document.getElementById('table1'); //获取table
           var oName = document.getElementById('name') //获取姓名文本框
           var oAge = document.getElementById('age') //获取年龄文本框
           var oBtn = document.getElementById('btn') //获取添加按钮
           var id = oTable.tBodies[0].rows.length + 1; //将 id 的值作为全局变量保存,避免 id 重复
           oBtn.onclick = function () {  
               var oTr = document.createElement('tr') //创建 tr 元素
              oTr.innerHTML = '<td>' + (id++) + '</td><td>' + oName.value + //给 tr 赋值
                  '</td><td>' +
                   oAge.value + '</td><td><a href="javascript:;">删除</a></td>'
               oTr.getElementsByTagName('a')[0].onclick = function () {  // 给删除按钮设置点击时间
                   oTable.tBodies[0].removeChild(this.parentnode.parentNode)
               }
               oTable.tBodies[0].appendChild(oTr)
          }
       }
   </script>
</body>

表格搜索、忽略大小写、模糊查询

DOM中table的便捷操作

tBobies(数组) tHead tFoot rows(行) cells(单元格)
<body>
  <table border="1" id="table1" width="500">
      <thead>
           <tr>
              <td>ID</td>
               <td>姓名</td>
               <td>年龄</td>
           </tr>
       </thead>
       <tbody>
           <tr>
               <td>1</td>
               <td>张三</td>
              <td>23</td>
           </tr>
       </tbody>
  </table>
   <script>
       window.onload = function () {
           var oTable = document.getElementById('table1')
           alert(oTable.getElementsByTagName('tbody')[0].getElementsByTagName('tr')[0].getElementsByTagName('td')[1].innerHTML)
           alert(oTable.tBodies[0].rows[0].cells[1].innerHTML)
       }
   </script>
</body>

隔行变色、高亮

<body>
   <table border="1" id="table1" width="500">
       <thead>
           <tr>
              <td>ID</td>
              <td>姓名</td>
               <td>年龄</td>
          </tr>
      </thead>
      <tbody>
           <tr>
              <td>1</td>
              <td>张三</td>
               <td>23</td>
           </tr>
           <tr>
               <td>2</td>
               <td>里斯</td>
               <td>24</td>
           </tr>
           <tr>
              <td>3</td>
               <td>王武</td>
               <td>25</td>
           </tr>
       </tbody>
   </table>
   <script>
       window.onload = function () {
           var oTable = document.getElementById('table1');
           var oldColor = '' //原来的背景颜色
           alert(oTable.tBodies[0].rows.length)
           for(var i = 0; i < oTable.tBodies[0].rows.length; i++){
               oTable.tBodies[0].rows[i].onmouseover = function(){
                   oldColor = this.style.background; //将原来的背景颜色保存起来
                   this.style.background = 'yellow'
               }
               oTable.tBodies[0].rows[i].onmouseout = function(){
                   this.style.background = oldColor
               }
               if(i % 2){ // i%2为0时,条件为假
                   oTable.tBodies[0].rows[i].style.background = "#999"
               }else{
                   oTable.tBodies[0].rows[i].style.background = ""
               }
           }
       }
   </script>
</body>

添加行、删除行

<body>
   <input type="text" id="name">
   <input type="text" id="age">
   <input type="button" id="btn" value="添加">
   <table border="1" id="table1" width="500">
       <thead>
           <tr>
               <td>ID</td>
               <td>姓名</td>
               <td>年龄</td>
               <td>操作</td>
           </tr>
       </thead>
       <tbody></tbody>
   </table>
   <script>
       window.onload = function () {
           var oTable = document.getElementById('table1'); //获取table
           var oName = document.getElementById('name') //获取姓名文本框
           var oAge = document.getElementById('age') //获取年龄文本框
           var oBtn = document.getElementById('btn') //获取添加按钮
           var id = oTable.tBodies[0].rows.length + 1; //将 id 的值作为全局变量保存,避免 id 重复
           oBtn.onclick = function () {  
               var oTr = document.createElement('tr') //创建 tr 元素
              oTr.innerHTML = '<td>' + (id++) + '</td><td>' + oName.value + //给 tr 赋值
                  '</td><td>' +
                   oAge.value + '</td><td><a href="javascript:;">删除</a></td>'
               oTr.getElementsByTagName('a')[0].onclick = function () {  // 给删除按钮设置点击时间
                   oTable.tBodies[0].removeChild(this.parentNode.parentNode)
               }
               oTable.tBodies[0].appendChild(oTr)
          }
       }
   </script>
</body>

表格搜索、忽略大小写、模糊查询

<body>
   姓名:<input type="text" id="name"><input type="button" value="搜索" id="btn">
   <table border="1" id="table1" width="500">
       <thead>
           <tr>
               <td>ID</td>
               <td>姓名</td>
               <td>年龄</td>
           </tr>
       </thead>
       <tbody>
           <tr>
               <td>1</td>
               <td>张三</td>
               <td>23</td>
           </tr>
           <tr>
               <td>2</td>
               <td>里斯</td>
               <td>24</td>
           </tr>
       </tbody>
   </table>
   <script>
       window.onload = function () {
           var oTable = document.getElementById('table1');
           var oName = document.getElementById('name')
           var oBtn = document.getElementById('btn')
           oBtn.onclick = function()
           {
       for(var i = 0; i < oTable.tBodies[0].rows.length; i++){ //循环每一行
       var oTd = oTable.tBodies[0].rows[i].cells[1].innerHTML.toLowerCase()
                   var oInp = oName.value.toLowerCase()
//if(oTd == oInp){ //比较每一行的第二列和文本行的值是否相等//if(oInp.toLowerCase() == oTd.toLowerCase()){ //将值先转成小写,再进行比较, 或者全部转成大写 toUpperCase()if(oTd.search(oInp) != -1){ //字符串中的search(),如果包含返回字符的位置、不包含返回 -1
         oTable.tBodies[0].rows[i].style.background = 'red'
           }else{
             oTable.tBodies[0].rows[i].style.background = ''
                   }
               }
           }
       }
   </script>
</body>
<body>
   姓名:<input type="text" id="name"><input type="button" value="搜索" id="btn">
   <table border="1" id="table1" width="500">
       <thead>
           <tr>
               <td>ID</td>
               <td>姓名</td>
               <td>年龄</td>
           </tr>
       </thead>
       <tbody>
           <tr>
               <td>1</td>
               <td>张三</td>
               <td>23</td>
           </tr>
           <tr>
               <td>2</td>
               <td>里斯</td>
               <td>24</td>
           </tr>
       </tbody>
   </table>
   <script>
       window.onload = function () {
           var oTable = document.getElementById('table1');
           var oName = document.getElementById('name')
           var oBtn = document.getElementById('btn')
           oBtn.onclick = function()
           {
       for(var i = 0; i < oTable.tBodies[0].rows.length; i++){ //循环每一行
       var oTd = oTable.tBodies[0].rows[i].cells[1].innerHTML.toLowerCase()
                   var oInp = oName.value.toLowerCase()
//if(oTd == oInp){ //比较每一行的第二列和文本行的值是否相等//if(oInp.toLowerCase() == oTd.toLowerCase()){ //将值先转成小写,再进行比较, 或者全部转成大写 toUpperCase()if(oTd.search(oInp) != -1){ //字符串中的search(),如果包含返回字符的位置、不包含返回 -1
         oTable.tBodies[0].rows[i].style.background = 'red'
           }else{
             oTable.tBodies[0].rows[i].style.background = ''
                   }
               }
           }
       }
   </script>
</body>

“原生js中怎么用DOM操作table及表格搜索功能”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: 原生js中怎么用DOM操作table及表格搜索功能

本文链接: https://lsjlt.com/news/309463.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 原生js中怎么用DOM操作table及表格搜索功能
    本篇内容介绍了“原生js中怎么用DOM操作table及表格搜索功能”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!DOM中table的便捷操作...
    99+
    2023-06-27
  • 怎么使用elementUI组件实现表格的分页及搜索功能
    今天小编给大家分享一下怎么使用elementUI组件实现表格的分页及搜索功能的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。主...
    99+
    2023-07-05
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作