zoukankan      html  css  js  c++  java
  • Javascript DOM 03 表格添加、删除 + 搜索

    获取
    tBodies、tHead、tFoot、rows、cells
     
    隔行变色
    鼠标移入高亮
     
    添加、删除一行
    DOM方法的使用
     
                                                                 添加、删除
     
      1 <script>
      2 window.onload=function (){
      3 /*var str='abcdef';
      4 alert(str.search('g'));    //找到并且返回字符串出现的位置,如果没找到-1
      5 */
      6 /*
      7 var str='abc 123 ert';
      8 var arr=str.split(' ');
      9 alert(arr);
     10 */
     11     /*var oTab=document.getElementById('tab1');
     12     //alert(oTab.getElementsByTagName('tbody')[0].getElementsByTagName('tr')[1].getElementsByTagName('td')[1].innerHTML);
     13     alert(oTab.tBodies[0].rows[1].cells[1].innerHTML);*/
     14 
     15 //表格隔行变色
     16     var oTab=document.getElementById('tab1');
     17     //alert(oTab.rows.length);
     18     for(var i=0;i<oTab.tBodies[0].rows.length;i++)
     19     {
     20         if(i%2==1){ oTab.tBodies[0].rows[i].style.background=''; }
     21         else{oTab.tBodies[0].rows[i].style.background='#ccc';  }    
     22         //鼠标经过时颜色的改变
     23         oTab.tBodies[0].rows[i].onmouseover=function ()
     24         {   
     25             oBgColor=this.style.background;
     26             this.style.background='green';
     27         }
     28         oTab.tBodies[0].rows[i].onmouseout=function ()
     29         {
     30             this.style.background=oBgColor;
     31         }
     32             
     33     }
     34    // 增加,删除
     35    var  oBtn=document.getElementById('btn1');
     36    var  oName=document.getElementById('name');
     37    var  oAge=document.getElementById('age');
     38    var  id=oTab.tBodies[0].rows.length+1;
     39    oBtn.onclick=function ()
     40    {
     41         var oTr = document.createElement('tr');
     42         
     43         var oTd=document.createElement('td');
     44         oTd.innerHTML=id++    //oTab.tBodies[0].rows.length+1;//添加 ID 
     45         oTr.appendChild(oTd);  
     46    
     47         var oTd=document.createElement('td');
     48         oTd.innerHTML=oName.value;
     49         oTr.appendChild(oTd);
     50    
     51         var oTd=document.createElement('td');
     52         oTd.innerHTML=oAge.value;
     53         oTr.appendChild(oTd);
     54         
     55         var oTd=document.createElement('td');
     56         oTd.innerHTML='<a href="javascript:;">删除</a>';
     57         oTr.appendChild(oTd);
     58         oTd.getElementsByTagName('a')[0].onclick=function ()
     59         {
     60              oTab.tBodies[0].removeChild(this.parentNode.parentNode);    
     61         }
     62         
     63         oTab.tBodies[0].appendChild(oTr);
     64    }
     65    
     66    
     67 
     68 
     69 }
     70 </script>
     71 </head>
     72 
     73 <body>
     74 姓名:<input id="name" type="text" />
     75 年龄:<input id="age" type="text" />
     76 <input id="btn1" type="button" value="添加" />
     77 
     78 
     79 <table  id="tab1" border="1" width="500">
     80 
     81    <thead> <td> ID</td>
     82        <td> 姓名</td>
     83         <td> 年龄</td>
     84         <td>操作</td>
     85    </thead>
     86    <tbody>
     87    <tr>
     88       <td> 2</td>
     89        <td> Mrs.Jimmy</td>
     90         <td> 17</td>
     91         <td></td>
     92    </tr>
     93    
     94    <tr>
     95       <td> 3</td>
     96        <td> 张三</td>
     97         <td> 27</td><td></td>
     98    </tr>
     99    
    100    <tr>
    101       <td> 1</td>
    102        <td> 李斯</td>
    103         <td> 32</td><td></td>
    104    </tr>
    105    
    106     <tr>
    107       <td> 4</td>
    108        <td> 李四</td>
    109         <td> 12</td><td></td>
    110    </tr>
    111    
    112     <tr>
    113       <td> 5</td>
    114        <td> Mr.ZhiNiao</td>
    115         <td> 12</td><td></td>
    116    </tr>
    117    
    118    </tbody>
    119 
    120 </table>
    121 </body>

                                                                                         搜索

    搜索
    版本1:基础版本——字符串比较
    版本2:忽略大小写——toLowerCase大小写转换 
    版本3:模糊搜索——search的使用
    版本4:多关键词——split
     
     1 <script>
     2 window.onload=function (){
     3  
     4        var oTab=document.getElementById('tab1');
     5     var oTxt=document.getElementById('name');
     6     var oBtn=document.getElementById('btn1');
     7     oBtn.onclick=function ()
     8     {
     9        for(var i=0;i<oTab.tBodies[0].rows.length;i++)
    10         {
    11             var sTab=oTab.tBodies[0].rows[i].cells[1].innerHTML.toLowerCase();//toLowerCase()函数忽略大小
    12             var sTxt=oTxt.value.toLowerCase();
    13             //alert(sTab.search(sTxt));//search 匹配到模糊字段,打印为 0 ,没有匹配为 -1
    14         /*    if(sTab.search(sTxt)!=-1)
    15             {
    16                 oTab.tBodies[0].rows[i].style.background='yellow';
    17             }
    18             else
    19             {
    20                 oTab.tBodies[0].rows[i].style.background='';
    21             }
    22         */
    23             //多关键字筛选
    24             //var str = 'abc c her';
    25             //alert(str.split(' '));
    26             var arr=sTxt.split(' ');//分隔带空格的字符串
    27             oTab.tBodies[0].rows[i].style.background='';
    28             for(var j=0;j<arr.length;j++)
    29              {
    30                   if(sTab.search(arr[j])!=-1)
    31                   {
    32                       oTab.tBodies[0].rows[i].style.background='yellow';
    33                       }
    34              }
    35         }
    36 
    37     }
    38 
    39 }
    40 </script>
    41 </head>
    42 
    43 <body>
    44 姓名:<input id="name" type="text" />
    45 <input id="btn1" type="button" value="搜索" />
    46 
    47 <table  id="tab1" border="1" width="500">
    48 
    49    <thead> 
    50         <td> ID</td>
    51         <td>姓名</td>
    52         <td> 年龄</td>
    53         <td>操作</td>
    54    </thead>
    55    <tbody>
    56      <tr>
    57         <td> 2</td>
    58         <td>Mrs.Jimmy</td>
    59         <td> 17</td>
    60         <td></td>
    61      </tr>
    62    
    63      <tr>
    64         <td> 3</td>
    65         <td>张三</td>
    66         <td> 27</td><td></td>
    67      </tr>
    68    
    69      <tr>
    70        <td> 1</td>
    71         <td>李斯</td>
    72         <td> 32</td><td></td>
    73      </tr>
    74    
    75      <tr>
    76         <td> 4</td>
    77         <td>李四</td>
    78         <td> 12</td><td></td>
    79      </tr>
    80    
    81      <tr>
    82        <td> 5</td>
    83        <td>Mr.ZhiNiao</td>
    84        <td> 12</td><td></td>
    85      </tr>
    86    
    87    </tbody>
    88 
    89 </table>
    90 </body>
  • 相关阅读:
    dubbox编译
    fastdfs的启动停止
    fastDFS单机
    Dsu on tree算法
    The 2017 ACM-ICPC Asia Beijing Regional Contest(重现赛)
    2019南京ICPC(重现赛) F
    Codeforces Round #634 (Div. 3)
    Codeforces Round #632 (Div. 2)
    HDU 6521 Party(线段树)
    牛客小白月赛20
  • 原文地址:https://www.cnblogs.com/izhiniao/p/3706177.html
Copyright © 2011-2022 走看看