国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

javascript實現Email郵件顯示與刪除功能

2019-11-20 11:13:05
字體:
來源:轉載
供稿:網友

一、主要介紹:
這題采用之前的技術,根據table的rows屬性,獲得數組,然后對數組設置樣式,所以顏色就出來了。

1).全選復選框,通過var nodess=document.getElementsByName("mail");

for(var x=0;x<nodess.length;x++){nodess[x].checked=nodes.checked;}

復選框函數進行

2).按鈕全選,反選,和取消全選,可以用一個函數寫,傳入不同的參數AllBybtn(num)類型即可

函數里面 根據js的特性 非0 和 0 這兩種狀態,進行設置,為了同步,需要分別進行設置

3).為了顯示出當全部選中就默認全選的復選框選中,所以需要對每一個復選框進行設置,采用函數checkBysingle()進行設置

4).刪除所選項是需要主要,當前的是checkbox對象,上一級是td--tr--先拿到tr對象,然后對通過tr的父節點刪除tr對象再刪除之后,x會變化,可能有些刪不到,所以需要將X的值還原,或者從后面開始刪除。

2、樣式設置:

<style type="text/css">       .one{         background-color:#00ff80;       }       .two{         background-color:#80ff00;       }       .three{         background-color:#0000ff;       }       table th{         background-color:#c0c0c0;       }       table{         width:400px;         border:solid 1px;       }       table tr{         height:50px;       }     </style> 

三、背景顏色以及鼠標移動的事件設置

  function toaddcolor(){           //顏色設置,           var nodes = document.getElementById("tabid");           var rows1 = nodes.rows;           for (var x = 1; x < rows1.length; x++) {             if (x % 2 == 0) {               rows1[x].className = "one";             }             else {               rows1[x].className = "two";             }           }         }           function addEvent(){             var name;             //當鼠標移上去之后發生相應的變化             var nodes=document.getElementById("tabid");             var rows1=nodes.rows;             for (var x = 1; x < rows1.length; x++) {             rows1[x].onmouseover = function(){               name = this.className;               this.className = "three";             }             rows1[x].onmouseout = function(){               this.className = name;             }              //             alert("bb"); //             alert(rows1[x].getElementsByTagName("input")[0].nodeName);             rows1[x].getElementsByTagName("input")[0].onclick=function(){//每一行的input對象               document.getElementsByName("allItem")[0].indeterminate=true;//讓全選的復選框形狀發生變化             }           }         }         onload=function(){//在網頁加載時候調用           toaddcolor();           addEvent();         } 

四、復選框的全選

function allcheck(nodes){//全選checkbox的點擊調用這個           var nodess=document.getElementsByName("mail");           for(var x=0;x<nodess.length;x++){             nodess[x].checked=nodes.checked;           }           //多個全選的時候,必須和其他的一個一樣           var nodes1=document.getElementsByName("allItem");           for(var x=0;x<nodes1.length;x++){             nodes1[x].checked=nodes.checked;           }         } 

五、按鈕的全選

function AllBybtn(num){//全選按鈕設置           var nodess = document.getElementsByName("mail");           /*多重for 循環不太好,可以根據js里面的特性0  非0            for (var x = 0; x < nodess.length; x++) {             if (num == 1) {               nodess[x].checked = 1;             }else if (num == 2) {                 nodess[x].checked = !nodess[x].checked;               }else if (num == 3) {                   nodess[x].checked = false;                 }           }*/           for(var x=0;x<nodess.length;x++){             if(num<2){               nodess[x].checked=num;                 //讓全選的復選框可以 單獨寫個函數                 var all=document.getElementsByName("allItem");                 for(var y=0;y<all.length;y++){                   if(num==1){                   all[y].checked=num;                 }else{                   all[y].checked=num;                 }               }             }else{               nodess[x].checked=!nodess[x].checked;               var all=document.getElementsByName("allItem");                 for (var y = 0; y < all.length; y++) {                   all[y].checked=0;                 }}}} 

六、所有項目都選中之后全選自動選中

function checkBysingle(){//全部入選之后,全選的自動選中                var flag = true;           var node = document.getElementsByName("mail");           for (var x = 0; x < node.length; x++) {             if (node[x].checked == false) {               flag = false;               break;             }           }                      var all = document.getElementsByName("allItem");           for (var y = 0; y < all.length; y++) {             if (flag) {               all[y].checked = true;             }             else {               all[y].checked = false;             }}} 

 七、刪除郵件的函數(刪除行)

function DelBybtn(){//刪除行   var tdnode=document.getElementsByName("mail");     /*for(var x=0;x<tdnode.length;x++){     if(tdnode[x].checked){//對象是 checkbox 我們必須要那父級的父級 《tr》,我們需要移除的就是tr對象        var trnode=tdnode[x].parentNode.parentNode;//tr對象        trnode.parentNode.removeChild(trnode);//table對象移除tr對象     // alert("aa");     //節點容器跟Java當中的集合一樣,只要是remove(),長度就會變的。這里,需要進行x的復位       x--;     }*/     for(var x=tdnode.length-1;x>=0;x--){       if(tdnode[x].checked){//對象是 checkbox 我們必須要那父級的父級 《tr》,我們需要移除的就是tr對象        var trnode=tdnode[x].parentNode.parentNode;//tr對象        trnode.parentNode.removeChild(trnode);//table對象移除tr對象     }     loading();//調用顏色的設置   } } 

現象一:

反選效果:

刪除前:

刪除后:

完整代碼:

<!DOCTYPE html> <html>  <head>   <!--     這題采用之前的技術,根據table的rows屬性,獲得數組,然后對數組設置樣式,所以顏色就出來了     1,全選復選框,通過var nodess=document.getElementsByName("mail");           for(var x=0;x<nodess.length;x++){             nodess[x].checked=nodes.checked;           }     復選框函數進行     2,按鈕全選,反選,和取消全選,可以用一個函數寫,傳入不同的參數AllBybtn(num)類型即可     函數里面 根據js的特性 非0 和 0 這兩種狀態,進行設置,為了同步,需要分別進行設置     3,為了顯示出當全部選中就默認全選的復選框選中,所以需要對每一個復選框進行設置,采用函數checkBysingle()進行設置     4,刪除所選項是需要主要,當前的是checkbox對象,上一級是td--tr--先拿到tr對象,然后對通過tr的父節點刪除tr對象       再刪除之后,x會變化,可能有些刪不到,所以需要將X的值還原,或者從后面開始刪除   -->   <title>Mail.html</title>     <style type="text/css">       .one{         background-color:#00ff80;       }       .two{         background-color:#80ff00;       }       .three{         background-color:#0000ff;       }       table th{         background-color:#c0c0c0;       }       table{         width:400px;         border:solid 1px;       }       table tr{         height:50px;       }     </style>     <script type="text/javascript">         var name;         function toaddcolor(){           //顏色設置,           var nodes = document.getElementById("tabid");           var rows1 = nodes.rows;           for (var x = 1; x < rows1.length; x++) {             if (x % 2 == 0) {               rows1[x].className = "one";             }             else {               rows1[x].className = "two";             }           }         }           function addEvent(){             var name;             //當鼠標移上去之后發生相應的變化             var nodes=document.getElementById("tabid");             var rows1=nodes.rows;             for (var x = 1; x < rows1.length; x++) {             rows1[x].onmouseover = function(){               name = this.className;               this.className = "three";             }             rows1[x].onmouseout = function(){               this.className = name;             }              //             alert("bb"); //             alert(rows1[x].getElementsByTagName("input")[0].nodeName);             rows1[x].getElementsByTagName("input")[0].onclick=function(){//每一行的input對象               document.getElementsByName("allItem")[0].indeterminate=true;//讓全選的復選框形狀發生變化             }           }         }         onload=function(){//在網頁加載時候調用           toaddcolor();           addEvent();         }         function allcheck(nodes){//全選checkbox的點擊調用這個           var nodess=document.getElementsByName("mail");           for(var x=0;x<nodess.length;x++){             nodess[x].checked=nodes.checked;           }           //多個全選的時候,必須和其他的一個一樣           var nodes1=document.getElementsByName("allItem");           for(var x=0;x<nodes1.length;x++){             nodes1[x].checked=nodes.checked;           }         }         function AllBybtn(num){//全選按鈕設置           var nodess = document.getElementsByName("mail");           /*多重for 循環不太好,可以根據js里面的特性0  非0            for (var x = 0; x < nodess.length; x++) {             if (num == 1) {               nodess[x].checked = 1;             }else if (num == 2) {                 nodess[x].checked = !nodess[x].checked;               }else if (num == 3) {                   nodess[x].checked = false;                 }           }*/           for(var x=0;x<nodess.length;x++){             if(num<2){               nodess[x].checked=num;                 //讓全選的復選框可以 單獨寫個函數                 var all=document.getElementsByName("allItem");                 for(var y=0;y<all.length;y++){                   if(num==1){                   all[y].checked=num;                 }else{                   all[y].checked=num;                 }               }             }else{               nodess[x].checked=!nodess[x].checked;               var all=document.getElementsByName("allItem");                 for (var y = 0; y < all.length; y++) {                   all[y].checked=0;                 }             }           }         }                  function checkBysingle(){//全部入選之后,全選的自動選中           var flag = true;           var node = document.getElementsByName("mail");           for (var x = 0; x < node.length; x++) {             if (node[x].checked == false) {               flag = false;               break;             }           }                      var all = document.getElementsByName("allItem");           for (var y = 0; y < all.length; y++) {             if (flag) {               all[y].checked = true;             }             else {               all[y].checked = false;             }}}              function DelBybtn(){//刪除行         var tdnode=document.getElementsByName("mail");           /*for(var x=0;x<tdnode.length;x++){           if(tdnode[x].checked){//對象是 checkbox 我們必須要那父級的父級 《tr》,我們需要移除的就是tr對象              var trnode=tdnode[x].parentNode.parentNode;//tr對象              trnode.parentNode.removeChild(trnode);//table對象移除tr對象           // alert("aa");           //節點容器跟Java當中的集合一樣,只要是remove(),長度就會變的。這里,需要進行x的復位             x--;           }*/                      for(var x=tdnode.length-1;x>=0;x--){             if(tdnode[x].checked){//對象是 checkbox 我們必須要那父級的父級 《tr》,我們需要移除的就是tr對象              var trnode=tdnode[x].parentNode.parentNode;//tr對象              trnode.parentNode.removeChild(trnode);//table對象移除tr對象           }           toaddcolor();           addEvent();         }       }     </script>     </head>    <body>   <table id="tabid">     <tr> <th><input type="checkbox" name="allItem" onclick="allcheck(this)"/> 全選 </th> <th>發件人</th> <th>郵件標題</th> <th>郵件附屬信息</th></tr>     <tr> <td><input type="checkbox" name="mail" onclick="checkBysingle(this)" /> </td> <td>張三</td> <td>國慶祝福</td> <td>郵件附屬信息1....</td></tr>     <tr> <td><input type="checkbox" name="mail" onclick="checkBysingle(this)" /> </td> <td>Jack</td> <td>假期堵車</td> <td>郵件附屬信息2....</td></tr>     <tr> <td><input type="checkbox" name="mail" onclick="checkBysingle(this)" /> </td> <td>Jack</td> <td>假期堵車</td> <td>郵件附屬信息3....</td></tr>     <tr> <td><input type="checkbox" name="mail" onclick="checkBysingle(this)" /> </td> <td>Jack</td> <td>假期堵車</td> <td>郵件附屬信息4....</td></tr>     <tr> <td><input type="checkbox" name="mail" onclick="checkBysingle(this)" /> </td> <td>Jack</td> <td>假期堵車</td> <td>郵件附屬信息5....</td></tr>     <tr> <td><input type="checkbox" name="mail" onclick="checkBysingle(this)" /> </td> <td>Tom</td> <td>一些廣告</td> <td>郵件附屬信息6....</td></tr>     <tr> <td><input type="checkbox" name="mail" onclick="checkBysingle(this)" /> </td> <td>Tom</td> <td>一些廣告</td> <td>郵件附屬信息6....</td></tr>     <tr> <td><input type="checkbox" name="mail" onclick="checkBysingle(this)" /> </td> <td>Tom</td> <td>一些廣告</td> <td>郵件附屬信息6....</td></tr>     <tr> <td><input type="checkbox" name="mail" onclick="checkBysingle(this)" /> </td> <td>Tom</td> <td>一些廣告</td> <td>郵件附屬信息6....</td></tr>     <tr><td><input type="checkbox"  name="allItem" onclick="allcheck(this)">全選</td>       <td colspan=3><input type="button" value="全選" name="btn1" onclick="AllBybtn(1)" />       <input type="button" value="反選" name="btn2" onclick="AllBybtn(2)"/>       <input type="button" value="取消全選" name="btn3" onclick="AllBybtn(0)"/>       <input type="button" value="刪除所選項" name="btn4" onclick="DelBybtn()"/>                     </td>     </tr>   </table>  </body> </html> 

希望本文所述對大家學習javascript程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 中方县| 巩义市| 昌邑市| 泗阳县| 信丰县| 徐汇区| 乳源| 普陀区| 深水埗区| 镇宁| 涞水县| 敖汉旗| 虞城县| 应城市| 灵川县| 贵州省| 乳山市| 通道| 田林县| 湖州市| 宜兰县| 湘乡市| 赤城县| 家居| 凤凰县| 新营市| 阳城县| 祁门县| 丰顺县| 红原县| 绥德县| 高陵县| 汾西县| 偏关县| 屯留县| 固阳县| 桑植县| 怀柔区| 西青区| 鄄城县| 通海县|