如何使用克隆方法在表中添加新行时使用Id禁用输入框?

时间:2015-05-18 08:19:10

标签: javascript jquery

我有一个javascript函数和HTML表单,其中包含一个id Phone的表,并且有一个javascript函数可以添加和删除行。

我的问题是在通过add方法创建一个新行时我想要表格数据输入字段(id="Employee_ID")我要禁用。是否有人可以帮助我。

$("input.add").live('click', function() {
    var $tr = $(this).closest('tr');
    var $clone = $tr.clone();
    $clone.find(':text').val('');
    $clone.find("select").val('');
    $clone.find("a").removeAttr("href");
    $clone.find("label").val('');
    $clone.find(':checkbox:checked').prop('checked', false).val('N');
    $clone.find("#Employee_ID").prop("disable", true);
    $tr.after($clone);
});

2 个答案:

答案 0 :(得分:0)

首先我要更好地说找到class名称和disable的元素!!当您clone尝试为cloned元素提供不同的ID时,DOM中的IDs应该是唯一的。尝试使用attr代替prop,最后应该使用disabled代替disable

$clone.find("#Employee_IDClass").attr("disabled", true);

答案 1 :(得分:0)

您的代码无法按预期工作,因为每个文档的ID必须是唯一的。因此,当您说$clone.find("#Employee_ID")时,搜索不仅限于$clone元素,而是在页面的某处找到ID为Employee_ID的任意元素。

您需要避免克隆元素的ID,您必须为克隆分配新ID。

如果您想尝试前者,可以为input元素指定一个类,或者按类型($clone.find('input'))找到它。