我已经完成了在html,jquery中添加和删除动态行。
HTML:
<form action="grading.php" method="post">
<table width="100%" id="tableRealizzazione">
<tr>
<th></th>
<th style="padding:12px;text-align:center;">Serial No</th>
<th style="padding:12px;text-align:center;">Personale</th>
<th style="padding:12px;text-align:center;">Percentage</th>
<th style="padding:12px;text-align:center;">Marketing point</th>
<th style="padding:12px;text-align:center;">Add/Remove</th>
</tr>
<tr class="even">
<td></td>
<td>
<input type="text" name="serial[]" class="add increment" value="1">
</td>
<td style="padding:12px;">
<input type="text" value="" name="Personale[]">
</td>
<td style="padding:12px;">
<input type="text" name="from[]" size="5%"> -
<input type="text" name="to[]" size="5%"> %
</td>
<td style="padding:12px;">
<input type="text" class="totaliCostiGestione" name="marketpt[]">
</td>
<td style="padding:12px;">
<input type="text" name="programid[]" class="add" value="34" size="10%">
</td>
<td style="padding:12px;">
<input type="button" class="addnew add" value="+" />
</td>
</tr>
<tr>
<td>
<input type="submit" name="submit" value="submit">
</td>
</tr>
</table>
jQuery的:
$('.addnew').live('click', function(){
var thisRow = $(this).parent().parent();
newRow = thisRow.clone(true).insertAfter(thisRow);
newRow.find('input:not(.add)').val("");
$(this).removeClass('addnew').addClass('remove');
$(this).val("-");
newRow.find('input.increment').val(parseInt(thisRow.find('input.increment').val())+1);
});
$('.remove').live('click', function(){
$(this).parent().parent().remove();
});
但我想在同一个按钮上添加/删除操作。而不是将删除图标显示到上一行。
有人可以建议吗?
答案 0 :(得分:1)
我相信这就是您所寻找的,但如果不是,请告诉我。
$('.addnew').live('click', function(){
var thisRow = $(this).parent().parent();
newRow = thisRow.clone(true).insertAfter(thisRow);
newRow.find('input:not(.add)').val("");
newRow.find('.addnew').removeClass('addnew').addClass('remove');
newRow.find('.remove').val("-");
newRow.find('input.increment').val(parseInt(thisRow.find('input.increment').val())+1);
});
$('.remove').live('click', function(){
$(this).parent().parent().remove();
});
这样可以保持第一行的+,并为克隆的行添加 - 按钮。
http://jsfiddle.net/p5QwC/3/是一个有效的例子。
<强>更新强>
假设您不希望删除初始行,可能这更符合您的要求。 http://jsfiddle.net/p5QwC/10/