增加添加新行

时间:2013-06-12 13:14:16

标签: jquery

如何增加新行以继续使用现有数字?

Demo

$('.add-button').click( function() {
//var $current_num = $("table#myTable tbody tr td").length;
    var $this = $("table#myTable tbody tr");
    var $current_num = $this.find("td:first").attr("rowspan").length;
    var $incremented = $this.find('td.increment').val(parseInt($this.find('td.increment').val())+1);

     $("#myTable tbody").append("<tr><td rowspan='2'>" + $incremented + "</td><td>other data</td><td>even more data</td></tr><tr><td colspan='8'>test</td></tr>");
   return false;
});

4 个答案:

答案 0 :(得分:1)

按如下方式检索增量值,它应该起作用:

var $this = $("table#myTable tbody");
var $incremented = $this.find('td[rowspan]:last').text()*1 + 1;

更新了您的小提琴:http://jsfiddle.net/QYGpe/16/

答案 1 :(得分:0)

将css类名称(increment)提供给* TD *,其中显示计数器编号并使用last()方法获取显示最后一个的最后一个TD计数器编号,并获取其内容并增加,然后将其添加到新行中。

$(function(){
   $('.add-button').click( function(e) {   
    e.preventDefault();
    var $this = $("table#myTable tbody tr");
    var $current_num = $this.find("td:first").attr("rowspan").length;
    var $incremented =parseInt($("#myTable").find('td.increment').last()
                                                                     .html())+1;

     $("#myTable tbody").append("<tr><td rowspan='2'  class='increment'>" + 
               $incremented + "</td><td>other data</td>
               <td>even more data</td></tr><tr><td colspan='8'>test</td></tr>");

   });
 });

工作样本http://jsfiddle.net/QYGpe/14/

答案 2 :(得分:0)

var length = $this.length;

var $incremented = (length/2)+1;

试试这个。

答案 3 :(得分:0)

.text()元素

使用.val()而不是<td>
$(function() {
    var $tbody = $("#myTable tbody");
    $('.add-button').click( function(e) {
        e.preventDefault();
        var lastId = parseInt($tbody.find("td[rowspan]:last").text()) + 1;
        $tbody.append("<tr><td rowspan='2'>" + lastId + "</td><td>other data</td><td>even more data</td></tr><tr><td colspan='8'>test</td></tr>");
    });
});

jsFiddle code