【发布时间】:2014-03-10 01:00:33
【问题描述】:
我有一个使用 jQuery 填充表格的表单,代码工作正常问题是当我只有一行时我不知道如何禁用删除按钮。我的意思是如果是最后一行,我不想删除该行。
表格
<form name="prescor" id="prescor" method="post" action="#">
<table class="formulario">
<tr>
<td>Cantidad</td>
<td><input name="cant" type="text" id="cant" autocomplete="off" onKeyUp="subtotal()" pattern="[0-9]*." step="any"></td>
<td>Artículo</td>
<td><input name="idarti" type="text" id="idarti" autocomplete="off" ></td>
</tr>
<tr>
<td>Precio</td>
<td><input name="prec" id="prec" autocomplete="off" onKeyUp="subtotal()"></td>
<td>Total</td>
<td><input name="tota" type="text" id="tota" readonly></td>
<td><input name="agregar" type="button" value="Agregar" onclick="fn_agregar()" /></td>
</tr>
</table>
<table id="grilla" class="lista">
<thead>
<tr>
<th>Cant.</th>
<th>Artículo</th>
<th>Precio</th>
<th>Subtotal</th>
<th></th>
</tr>
</thead>
<tbody>
</tr>
</tbody>
<tfoot>
<tr>
<td colspan="2"><strong>No. Lineas:</strong> <span id="span_cantidad"></span></td>
</tr>
</tfoot>
</table>
脚本
$(document).ready(function(){
fn_eliminar();
fn_cantidad();
});
function fn_cantidad(){
var n = $("#grilla tbody").find("tr").length;
$("#span_cantidad").text(n);
};
function fn_agregar() {
cadena = "<tr>";
cadena = cadena + "<td><input type='text' name='cantidad[]' value='" + $("#cant").val() + "' readonly size='1' required></td>";
cadena = cadena + "<td><input type='text' name='idarticulo[]' value='" + $("#idarti").val() + "' readonly size='2' required></td>";
cadena = cadena + "<td><input type='text' name='precio[]' value='" + $("#prec").val() + "' readonly size='4' required></td>";
cadena = cadena + "<td><input type='text' name='subtotal[]' value='" + $("#tota").val() + "' readonly size='7' required></td>";
cadena = cadena + "<td><a class='elimina'><img src='cancelar.png' width='16' height='16' title='Eliminar Fila'/></a></td>";
$("#grilla tbody").append(cadena);
document.getElementById("idarti").value="";
document.getElementById("cant").value="";
document.getElementById("prec").value="";
document.getElementById("tota").value="";
fn_eliminar();
fn_cantidad();
};
function fn_eliminar()
{
$("a.elimina").click(function()
{
id = $(this).parents("tr").find("td").eq(0).html();
$(this).parents("tr").fadeOut("normal", function()
{
$(this).remove();
fn_cantidad();
})
});
}
【问题讨论】:
标签: jquery dynamic html-table rows