使用Jquery动态添加/删除表行

时间:2011-11-09 19:33:22

标签: jquery attr

我正在努力动态允许用户添加或删除包含表单字段的表行。

我有两个主要问题 - 需要使用选择器来捕获表的第二个元素(希望忽略标题行)

和第二个使用jQuery和disabled属性。在最初调用它时,我无法使用js if语句更改其后的属性。

我的代码在此处进行审核:http://jsfiddle.net/Jcortes/BE5Lr/792/

如果有人能提供帮助,我们将不胜感激。

$(document).ready(function() {
$('#DelBtn').attr('disabled', 'disabled');
var count = 1;
//*******************************************************************    
$('#AddBtn').click(function() {
    //problem is below, the selector is not returning the other elements. (ex=second)
    $("table tr:first").clone().find("input").each(function() {
        $(this).val('').attr('id', function(_, id) {
            return id + count;
        });
    }).end().appendTo("table");
    count++;
    if (count == 2) {
        $('#DelBtn').attr('disabled', '');
    }        
    if (count == 5) {
        $('#AddBtn').attr('disabled', 'disabled');
    }
}); //end AddBtn Function
//*******************************************************************    
$('#DelBtn').click(function() {
    $("table tr:last").remove();
    count--;
    if (count == 1) {
        $('#DelBtn').attr('disabled', 'disabled');
        $('#AddBtn').attr('disabled', '');
    }
}); //end DelBtn Function
//*******************************************************************    
}); //end DOM Ready

1 个答案:

答案 0 :(得分:0)

attr('disabled', '')调用失败的原因是因为您使用的是jQuery 1.7。 jquery 1.7现在可以正确区分属性和属性。残疾人士是一家酒店。请改用.prop() method

$('selector').prop('disabled', 'disabled');
$('selector').prop('disabled', '');
啊,我现在看到第二个问题了。您可以使用nth-child选择器获取第二行。

$('table tr:nth-child(2)').clone();

http://jsfiddle.net/BE5Lr/793/