1

我有一个 div 包含一些动态生成的下拉菜单。

我想克隆它并将其添加到原始文件下方。原文的代码是:

<div id="subjectselectiondiv" style="width:inherit;">
    <h4>Select the subjects that you are able to tutor</h4>
    <div id='choices'>
        <script type="text/javascript">
            var doc = document.getElementById("choices");
            var subj_div = document.createElement('div');
            subj_div.setAttribute('class', 'selectSearchBar');
            subj_div.innerHTML = '<select id="level'+counter+'" name="level'+counter+'" class="selectSearchBar"><?php echo "<option>Level</option>"; while($row = mysqli_fetch_array($result_level, MYSQLI_ASSOC)){echo "<option value=".$row['id'].">".$row['level']."</option>";}?></select><div id="subject'+counter+'" style="display:inline;">sBar2</div><div id="topic'+counter+'" style="display:inline;">sbar3</div>';
            doc.appendChild(subj_div);
        </script>
    <a href='#' class="more" onclick="Repeat()">Add another subject</a>
</div>

我认为函数 Repeat() 可以使用:

function Repeat(){
    counter++;
    $('#choices').clone().appendTo('#subjectselectdiv');
    event.preventDefault();
}

但这不起作用 - 我错过了什么吗?

谢谢

4

1 回答 1

6

名称不匹配:

<div id="subjectselectiondiv" style="width:inherit;">
                     ^^^^^^
$('#choices').clone().appendTo('#subjectselectdiv');
                                            ^^^

您尝试附加的内容不存在。如果您费心检查您的 javascript 控制台,您很可能会看到有关不存在元素的警告/错误。

于 2013-06-03T21:26:37.857 回答