隨筆-16  評論-84  文章-1  trackbacks-0
          之前寫過一個簡單的利用jQuery實(shí)現(xiàn)表格行的動態(tài)增加與刪除的例子,有些人評論說"如果表格中是input元素,那么刪除后的東西都將自動替換,這樣應(yīng)該是有問題的,建議樓主改進(jìn)!",故特意改進(jìn)了一下!

          在項(xiàng)目中很多時候遇到這樣的問題,需要動態(tài)的增加、刪除表格的行,很多情況下我們都是在頁面來設(shè)置一個隱藏域的值,然后在js方法里動態(tài)的++或--,在學(xué)習(xí)jQuery的過程中,我試著用簡單的方法來模擬實(shí)現(xiàn)這一個過程

          效果圖如下:

          刪除之前

          刪除2行后:


          改進(jìn)后具體代碼如下:
           1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
           2<html xmlns="http://www.w3.org/1999/xhtml">
           3<head>
           4<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
           5<script type="text/javascript" src="jquery-1.3.1.js"></script>
           6<title></title>
           7<script>
           8    $(document).ready(function(){
           9        //<tr/>居中
          10        $("#tab tr").attr("align","center");
          11        
          12        //增加<tr/>
          13        $("#but").click(function(){
          14            var _len = $("#tab tr").length;        
          15            $("#tab").append("<tr id="+_len+" align='center'>"
          16                                +"<td>"+_len+"</td>"
          17                                +"<td>Dynamic TR"+_len+"</td>"
          18                                +"<td><input type='text' name='desc"+_len+"' id='desc"+_len+"' /></td>"
          19                                +"<td><a href=\'#\' onclick=\'deltr("+_len+")\'>刪除</a></td>"
          20                            +"</tr>");            
          21        }
          )    
          22    }
          )
          23    
          24    //刪除<tr/>
          25    var deltr =function(index)
          26    {
          27        var _len = $("#tab tr").length;
          28        $("tr[id='"+index+"']").remove();//刪除當(dāng)前行
          29        for(var i=index+1,j=_len;i<j;i++)
          30        {
          31            var nextTxtVal = $("#desc"+i).val();
          32            $("tr[id=\'"+i+"\']")
          33                .replaceWith("<tr id="+(i-1)+" align='center'>"
          34                                +"<td>"+(i-1)+"</td>"
          35                                +"<td>Dynamic TR"+(i-1)+"</td>"
          36                                +"<td><input type='text' name='desc"+(i-1)+"' value='"+nextTxtVal+"' id='desc"+(i-1)+"'/></td>"
          37                                +"<td><a href=\'#\' onclick=\'deltr("+(i-1)+")\'>刪除</a></td>"
          38                            +"</tr>");
          39        }
              
          40        
          41    }

          42</script>
          43</head>
          44<body>
          45    
          46    <table id="tab" border="1" width="60%" align="center" style="margin-top:20px">
          47        <tr>
          48            <td width="20%">序號</td>
          49            <td>標(biāo)題</td>
          50            <td>描述</td>
          51            <td>操作</td>
          52       </tr>
          53    </table>
          54    <div style="border:2px; 
          55                border-color:#00CC00; 
          56                margin-left:20%;
          57                margin-top:20px">
          58        <input type="button" id="but" value="增加"/>
          59    </div>
          60</body>
          61</html>
          62



          源代碼下載:Dynamic Table Column Operate
          posted on 2009-03-13 10:41 absolute 閱讀(84155) 評論(25)  編輯  收藏 所屬分類: JavaScript

          評論:
          # re: jQuery學(xué)習(xí) 表格行的動態(tài)增加和刪除簡單實(shí)現(xiàn) 2009-03-13 11:52 | Rique
          剛開始看JQuery,學(xué)習(xí)了!  回復(fù)  更多評論
            
          # re: jQuery學(xué)習(xí) 表格行的動態(tài)增加和刪除簡單實(shí)現(xiàn) 2009-03-13 12:58 | YXY
          很好,值得學(xué)習(xí)~~~~  回復(fù)  更多評論
            
          # re: jQuery學(xué)習(xí) 表格行的動態(tài)增加和刪除簡單實(shí)現(xiàn) 2009-03-13 13:31 | Jie
          很好
            回復(fù)  更多評論
            
          # re: jQuery學(xué)習(xí) 表格行的動態(tài)增加和刪除簡單實(shí)現(xiàn)[未登錄] 2009-06-07 11:15 | jiery
          這個做的很好啊!
          但是如何把它里面的數(shù)據(jù)保存呢?  回復(fù)  更多評論
            
          # re: jQuery學(xué)習(xí) 表格行的動態(tài)增加和刪除簡單實(shí)現(xiàn) 2009-07-28 14:16 | 網(wǎng)的
          你這個好像只是刪除最后一行啊
            回復(fù)  更多評論
            
          # re: jQuery學(xué)習(xí) 表格行的動態(tài)增加和刪除簡單實(shí)現(xiàn) 2010-01-04 16:49 | 匆匆過客
          很好,學(xué)習(xí)了!  回復(fù)  更多評論
            
          # re: jQuery學(xué)習(xí) 表格行的動態(tài)增加和刪除簡單實(shí)現(xiàn)[未登錄] 2010-01-06 14:13 | 過客
          如果表格中是input元素,那么刪除后的東西都將自動替換,這樣應(yīng)該是有問題的,建議樓主改進(jìn)!  回復(fù)  更多評論
            
          # re: jQuery學(xué)習(xí) 表格行的動態(tài)增加和刪除簡單實(shí)現(xiàn) 2010-01-17 10:51 | accelerator
          這種寫法不好維護(hù)吧  回復(fù)  更多評論
            
          # re: jQuery實(shí)現(xiàn)表格行的動態(tài)增加與刪除(改進(jìn)版) 2010-11-20 14:26 | iowen
          @過客

          已經(jīng)改進(jìn),謝謝  回復(fù)  更多評論
            
          # re: jQuery實(shí)現(xiàn)表格行的動態(tài)增加與刪除(改進(jìn)版) 2011-08-02 11:49 | 35法國高規(guī)格
          臺灣何時。。。。。  回復(fù)  更多評論
            
          # re: jQuery實(shí)現(xiàn)表格行的動態(tài)增加與刪除(改進(jìn)版) 2012-03-01 17:31 | 上海
          受益匪淺,謝謝  回復(fù)  更多評論
            
          # re: jQuery實(shí)現(xiàn)表格行的動態(tài)增加與刪除(改進(jìn)版) 2012-04-25 17:09 | 小賽
          @網(wǎng)的
          同感,哥們!  回復(fù)  更多評論
            
          # re: jQuery實(shí)現(xiàn)表格行的動態(tài)增加與刪除(改進(jìn)版) 2012-07-13 16:35 | wanglc
          不是只刪除最后一行,是刪除之后編號依次替換,很快看不見而已
            回復(fù)  更多評論
            
          # re: jQuery實(shí)現(xiàn)表格行的動態(tài)增加與刪除(改進(jìn)版)[未登錄] 2013-01-30 11:44 | Nick
          為什么我做的時候,把表頭覆蓋掉了?  回復(fù)  更多評論
            
          # re: jQuery實(shí)現(xiàn)表格行的動態(tài)增加與刪除(改進(jìn)版)[未登錄] 2013-01-30 11:45 | Nick
          是不是要用insertAfter?  回復(fù)  更多評論
            
          # re: jQuery實(shí)現(xiàn)表格行的動態(tài)增加與刪除(改進(jìn)版)[未登錄] 2013-02-19 22:35 | aa
          這個代碼為什么我烤下來不能執(zhí)行呢
            回復(fù)  更多評論
            
          # re: jQuery實(shí)現(xiàn)表格行的動態(tài)增加與刪除(改進(jìn)版) 2013-05-13 12:29 | Zjmainstay
          我也有一個。
          jQuery動態(tài)增刪改查表格信息,可左鍵/右鍵提示(原創(chuàng)自Zjmainstay)
          http://www.cnblogs.com/Zjmainstay/archive/2012/07/31/jQuery_AutoAddDeleteTableTr.html  回復(fù)  更多評論
            
          # re: jQuery實(shí)現(xiàn)表格行的動態(tài)增加與刪除(改進(jìn)版) 2013-05-14 10:29 | ioio_Carl
          刪除一行的時候,input的值可以像你這樣傳過去,但是我想請問那如果是select的值那要怎么傳呢?謝謝!  回復(fù)  更多評論
            
          # re: jQuery實(shí)現(xiàn)表格行的動態(tài)增加與刪除(改進(jìn)版) 2013-05-14 10:30 | ioio_Carl
          @ioio_Carl
          方便的話可以麻煩您發(fā)郵件告訴我嗎?ahjun30@hotmail.com,萬分感謝  回復(fù)  更多評論
            
          # re: jQuery實(shí)現(xiàn)表格行的動態(tài)增加與刪除(改進(jìn)版) 2013-05-14 11:43 | ioio_Carl
          @ioio_Carl
          好吧。我知道了。參考這篇文章~
          http://www.offid.cn/i/564/note/100470.html
          就是
          $("#select_id").val();  回復(fù)  更多評論
            
          # re: jQuery實(shí)現(xiàn)表格行的動態(tài)增加與刪除(改進(jìn)版) 2013-08-12 12:38 | 游客X
          $("tr[id=\'"+i+"\']")
          這里邊不需要轉(zhuǎn)義吧?  回復(fù)  更多評論
            
          # re: jQuery實(shí)現(xiàn)表格行的動態(tài)增加與刪除(改進(jìn)版) 2013-08-12 12:39 | 游客X
          @游客X
          $("tr[id="+i+"]") 就可以了  回復(fù)  更多評論
            
          # 000[未登錄] 2014-03-06 14:04 | 123
          123123  回復(fù)  更多評論
            
          # re: jQuery實(shí)現(xiàn)表格行的動態(tài)增加與刪除(改進(jìn)版) 2014-10-07 23:52 | feicoo
          正好幫我解決一個難題,謝謝!!!  回復(fù)  更多評論
            
          # re: jQuery實(shí)現(xiàn)表格行的動態(tài)增加與刪除(改進(jìn)版)[未登錄] 2014-10-16 15:19 | s

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 老河口市| 新巴尔虎右旗| 拉萨市| 大邑县| 清河县| 博爱县| 苏尼特左旗| 土默特右旗| 乌兰县| 金川县| 西昌市| 沾化县| 洞口县| 于都县| 宁德市| 广灵县| 金堂县| 镇江市| 汾阳市| 嵩明县| 农安县| 威远县| 区。| 修水县| 达日县| 吉首市| 安国市| 辽源市| 镇平县| 饶平县| 土默特右旗| 栖霞市| 夹江县| 荔浦县| 蓬安县| 尉氏县| 五原县| 东丽区| 收藏| 边坝县| 监利县|