通过jquery复制html元素的方法更好

时间:2013-03-04 15:21:23

标签: jquery

我有一个这样的表格:

<form:form name="ExpenseDetails" method="Post"
    action="ExpenseDetailsForm.html">
    <table id="Parent1_Table">
        <tbody>
            <tr>
                <td>
                    <table id="Item1_Table1">
                        <tbody>
                            <tr>
                                <td>Item</td>
                                <td><input type="text" name="Item1" id="Item1" required /></td>
                            </tr>
                            <tr>
                                <td>Expense in Rs</td>
                                <td><input type="text" name="ItemValue1" id="ItemValue1"></td>
                            </tr>
                        </tbody>
                    </table>
                </td>
                <td>
                    <table id="Item1_Table2">
                        <tbody>
                            <tr>
                                <td><button name="Edit1" id="Edit1">Edit</button></td>
                                <td><button name="Duplicate1" id="Duplicate1">Duplicate</button></td>
                                <td><button name="Trash1" id="Trash1">Trash</button></td>
                            </tr>
                        </tbody>
                    </table>
                </td>
            </tr>
        </tbody>
    </table>
</form:form>

点击duplicate1按钮后,我想创建另一个table,其元素与Parent1_Table的元素相同,然后添加它。

为此,我有两个解决方案:

1)找到点击的duplicate button所在的表格,
获取所有id元素并将其推入堆栈,
获取表格的整个html,
复制整个table元素,并在将ids递增1后附加到原始元素。

2)创建单击i按钮的duplicate不变的相同元素,
提交后,计算no:of文本元素并使用它们。

上述哪种解决方案易于开发?
谁能帮我选一个呢? 如果您需要有关该问题的更多详细信息,请与我们联系。

1 个答案:

答案 0 :(得分:1)

&#34;最佳&#34;问题总是很棘手。

每当我面对每一行重复的控件时,我都会避免使用id 。最多行将有一个id(通常甚至不会),但我会在其余部分使用一个类,尤其是因为它可以很好地处理事件委派。