-1

我在表格中有一行,并且该行未显示为 css 样式设置为display:none.

HTML表格:

<table class="myTable">
    <tr class="prototype">
    ........
    </tr>
</table>

CSS 代码:

.myTable .prototype{display:none;}

现在我必须克隆同一行并向其中添加一些数据并将该行附加到表中,如下所示:我有以下 jquery 代码:

var master = $(this).parents("table.myTable");

var prot = master.find(".prototype").clone();
prot.attr("class", "");
prot.find("#attributeValue").attr("value", "ABC");
prot.find("#contactFirstName").attr("value", "XYZ");

jQuery('table.myTable tr:last').before(prot);

但是该行不会被添加到表中。请帮我。

谢谢!

4

2 回答 2

1
  1. 如果您在 onLoad 事件中运行代码,请将第一行更改为var master = $(this).find("table.myTable");var master = $("table.myTable");
  2. 使用prot.removeClass();代替prot.attr("class", "");
  3. id 必须是唯一的,如果原型行中的元素有一个 id,你会得到无效的 HTML。
  4. 使用$().val('ABC')代替$().attr('value', 'ABC')

如果它仍然不起作用,请显示更多代码(可能是jsfiddle)。

于 2013-08-08T10:59:44.893 回答
0
var master = $(this).parents("table.myTable");

var prot = master.find("tr.prototype").clone();
prot.removeClass('prototype');
prot.find("#attributeValue").val("ABC");
prot.find("#contactFirstName").val("XYZ");

master.append(prot);
prot.show();
于 2013-08-08T11:01:30.563 回答