0

我有一个带有一些 id 名称的选择下拉菜单。我想使用 javascript 动态地使用不同的 ID 名称克隆它。这是我的代码。

<td>
            <div style="float: left;">
                <g:select name="degree.id" from="${DomainName.list()}" optionKey="id"
                          optionValue="title" noSelection="['': '']" id="degree"
                          value="${cvEducationDetailCO?.degree?.id}" onchange="changeGradeSelectData(this.value)"/>
            </div>

        </td>
<a href="javascript:void (0);" onclick="addAnotherSelectBox();">Add Another Select Box </a>

什么将是 jquery 呢?

我有一张桌子,里面有一个 tr 和一个 td。在那个 td 中有一个选择框。我需要克隆选择框并将其放入新行中。用户可以根据需要生成许多选择框。所以我希望生成一个动态 tr 并在其中创建具有新 ID 的选择框的克隆。

4

1 回答 1

2

如果你使用 jQuery,你可以说:

var newSelect = $("#degree").clone().prop("id", "newIdHere");

然后你可以将它添加到你的页面:

newSelect.appendTo("selector of parent element here");
// OR
$("selector of parent").append(newSelect);
// e.g., to add to same div as original:
$("#degree").parent().append(newSelect);

最好不要包含像 your 这样的内联事件属性onclick=...,特别是如果您已经在使用 jQuery:

<a href="#" id="addSelect">Add Another Select Box </a>

接着:

$(document).ready(function() {
    $("#addSelect").click(function(e) {
        e.preventDefault();
        var newSelect = $("#degree").clone().prop("id", "newIdHere");
        newSelect.wrap("<tr><td></td></tr>").closest("tr").appendTo("#idOfTableHere");
    });
});
于 2013-06-16T06:04:26.220 回答