使用jquery的附加元素的最终值

时间:2010-09-26 12:15:14

标签: jquery html append

我有一个表格,其中我在onclick事件上追加行,该行有一个按钮,您可以删除它...这很好。问题来自我插入了一些行,例如5行,并且我删除了第一行和最后一行的任何行,然后添加了两行,最后一行与前一行的计数器值重复。

我的问题是,如何获取附加的最后一行的值,以便我可以将其增加到我添加的任何行而不创建重复值

这是代码

HTML

<form action = '' method = 'post' id = 'resume_form'>        

<table id="work" width="100%" border="0" cellspacing="0" cellpadding="0" style="color:#FFFFFF" >
  <tr bgcolor="#0000FF">
    <td width="4%">&nbsp;</td>
    <td width="76%"><strong>PARTICULARS</strong></td>
    <td width="20%"><strong>AMOUNT</strong></td>   
  </tr>
</table>               
<input type="button" id="button"  value="Add field" / >
</form>

JS

<script type="text/javascript">

    $('#button').click(function(){
        var count = $('input.dasa').length;
                //Html to create a new field       

              '<tr class = "work_experiance' + count + '">' +
                '<td></td>' +
                '<td><input class=\'dasa\' type="text" name="part' + count + '" id="part' + count + '" /></td>' +
                '<td><input type="text" name="amount' + count + '" id="amount' + count + '" /</td>' +

            '<td><input class="remove_project_file" onclick="del(\''+count+'\')"  type = "button"  id = "delete' + count + '" name = "delete' + count + '" onclick="del(' + count + ')" value="delete' + count + '">' +
            '</tr>';
        $('#work').append(newFields);
    });
    $('form').submit(function() {
        $.post('resume.php', $(this).serialize(),
            function(data) { alert(data); });
        return false;
    });


function del(count)
{
var count;
    if(count=='0')
    {
        $('#delete'+count+'').attrib('disabled','');
    }
    else
    {
        $('.work_experiance' + count + '').remove();
    }

}

</script>

1 个答案:

答案 0 :(得分:2)

从最后一个字段获取count,如下所示:

 var count = parseInt($('input.dasa:last').attr('id').replace('part',''),10) + 1;

这会抓取:last <input class="dasa" id="partNNN" />并通过移除"part"前缀然后praseInt()左侧的内容来获取计数。然后我们只是将1添加到该结果中以创建下一行。