@OverWrite BlogJava

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            128 隨筆 :: 0 文章 :: 29 評論 :: 0 Trackbacks
          應用jquery,制作一個可以自動添加刪除行的表格,演示地址 http://www.vesung.cn/demo/table.html
          下面是完整的代碼:
          <html>
           
          <head>
            
          <title>帶有添加刪除行功能的表格</title>
            
          <script type="text/javascript" src="../js/jquery-1.2.1.pack.js"></script>
          <script type="text/javascript">
              
          //為每個表格添加“添加”,“刪除”行的按鈕        
              function add_bt(){
                  
          //添加行按鈕定義
                  var bt_add = $("<input class='bt_add' type='button' value='add'/>");
                  
          //刪除行按鈕定義
                  var bt_del = $("<input class='bt_del' type='button' value='del'/>");
                  
          //插入按鈕
                  $('table').before(bt_del).before('&nbsp;').before(bt_add);
                  
          //為每個表格的每個添加行按鈕關聯(lián)click動作
                  //以每個表格的最后一個tr元素為模板復制并append到表格內
                  $('.bt_add').click(function(){
                      
          //this指按鈕元素
                      var last_tr = $(this).next('table').find('tr:last');
                      last_tr.after('
          <tr>'+last_tr.html()+'</tr>');
                      
          var table = $(this).next('table');
                      
          //最優(yōu)為表格排序
                      mark_index(table[0].id);
                  }
          );
                  
          //為每個表格的每個刪除行按鈕關聯(lián)click動作
                  $('.bt_del').click(function(){
                      
          var last_tr = $(this).next().next('table').find('tr:last');
                      
          var index = last_tr[0].rowIndex;
                      
          if(last_tr[0].rowIndex>0){
                          last_tr.remove();
                          
          var table = $(this).next().next('table');
                          mark_index(table[
          0].id);
                      }

                  }
          );
              }

              
              
          //為每個表格添加序號
              function mark_index(table_id){
                  
          //定義序號的名稱
                  var indexName = '序號';
                  
          //獲得tables對象,如果table_id不為空,則返回指定的table元素,否則放回全部table元素集合
                  var tables = typeof table_id == "string"?$('#'+table_id):$('table');
                  
          //遍歷tables并執(zhí)行匿名函數(shù)
                  tables.each(function(){
                      
          var xuhao = $(this).find('tr:first').find('th:first').text();
                      
          //添加序號列
                      if(xuhao != indexName){
                          $(
          this).find('tr').each(function(){
                              
          if(this.rowIndex == 0)
                                  $(
          this.firstChild).before('<th align=center>'+indexName+'</th>');
                              
          else
                                  $(
          this.firstChild).before('<td align=center>'+this.rowIndex+'</td>');
                          }
          );                
                      }
          else{
                      
          //已經有序號了,只需更新
                          $(this).find('tr').each(function(){
                              
          if(this.rowIndex != 0)
                                  $(
          this.firstChild).text(this.rowIndex);
                          }
          );    
                      }

                  }
          );        
              }

          </script>

          <script type="text/javascript">
              
          /**
               *dom文檔裝載完畢時執(zhí)行
               
          */

              $(document).ready(
          function(){
                  mark_index();
          //這里自動執(zhí)行2個動作:1.為每個表格添加序號
                  add_bt();        //2.在每個表格前添加 添加,刪除行的按鈕
              }
          );
          </script>
          </head>
           
          <body>

          <table id='t1' cellSpacing=0 cellPadding=0 border=1>
              
          <thead>
                  
          <tr><th>name</th><th>email</th><th>nishen</th></tr>
              
          </thead>
              
          <tbody>
                  
          <tr><td>&nbsp;1</td><td>&nbsp;56</td><td>&nbsp;</td></tr>
                  
          <tr><td>&nbsp;1</td><td>&nbsp;ds</td><td>&nbsp;</td></tr>
                  
          <tr><td>&nbsp;4</td><td>&nbsp;43</td><td>&nbsp;</td></tr>
                  
          <tr><td>&nbsp;5</td><td>&nbsp;2</td><td>&nbsp;</td></tr>
                  
          <tr><td>&nbsp;4</td><td>&nbsp;g</td><td>&nbsp;</td></tr>
              
          </toboby>
          </table>

          <br><br>    
          <table id='t2' cellSpacing=0 cellPadding=0 border=1>
              
          <thead>
                  
          <tr><th>name</th><th>email</th><th>nishen</th></tr>
              
          </thead>
              
          <tbody>
                  
          <tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                  
          <tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                  
          <tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                  
          <tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
                  
          <tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
              
          </toboby>
          </table> 

          </body>
          </html>

          posted on 2008-02-22 14:45 vesung 閱讀(4007) 評論(0)  編輯  收藏 所屬分類: Ajax/html
          主站蜘蛛池模板: 精河县| 恭城| 四子王旗| 隆昌县| 绥滨县| 丹东市| 扶余县| 西华县| 开江县| 莲花县| 陆丰市| 炉霍县| 始兴县| 高要市| 西乌珠穆沁旗| 临江市| 葫芦岛市| 新巴尔虎左旗| 酉阳| 定州市| 阿城市| 武陟县| 大城县| 新营市| 汉阴县| 治多县| 获嘉县| 山丹县| 望奎县| 元朗区| 筠连县| 五峰| 金门县| 武胜县| 晋宁县| 萨嘎县| 水富县| 长宁县| 临颍县| 松阳县| 崇义县|