Javascript 在先前动态创建的另一个div中追加动态div

Javascript 在先前动态创建的另一个div中追加动态div,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我试图在另一个div中添加一个div,这两个div都是动态创建的。我真的不确定为什么它不在newDiv中添加它 出于各种目的,这个jQuery正在处理这个HTML片段 <select id="test" class="dropdown"> <option value="something1">Something 1</option> <option value="something2">Something 2</option&

我试图在另一个div中添加一个div,这两个div都是动态创建的。我真的不确定为什么它不在newDiv中添加它

出于各种目的,这个jQuery正在处理这个HTML片段

<select id="test" class="dropdown">
    <option value="something1">Something 1</option>
    <option value="something2">Something 2</option>
    <option value="something3">Something 3</option>
</select>
进一步澄清:

<script>
    $(document).ready(function(){
        $(".dropdown").dropdown();
    });
</script>
不幸的是,newDiv.addchild不起作用,我也尝试了newDiv.appendchild,但也失败了。

您需要使用原始元素的方法:

您不能使用newDiv追加新元素的原因从以下文档中显而易见:

此结构的副本将环绕匹配元素集中的每个元素


因此,wrapping元素不再是原始元素,它是原始元素的副本,并且不代表原始节点。

编辑:结果是,OP试图创建无效的HTML结构,在div标记内包装选项标记或其他任何内容,所以让我们关闭此操作

不要创建与现有div具有相同id的div,并像下面这样包装它们:original.wrapnewDiv;在此之前删除id

第二,您使用的是add函数,它不是您想要的,而是使用append:

newDiv.appendchild


add函数通过子函数扩展jquery对象newDiv。append将元素移动到DOM中的其他元素中。

它不起作用,因为在original.wrapnewDiv;您的div具有相同的ID,这是禁止的、虚假的,而且非常邪恶,请尝试var child=$;但这就是我删除该属性的原因。这和它不起作用有什么关系?我猜你是在试图创建无效的html,select标记可能只有optgroup或option标记,正如childrenI所说的。。。我尝试使用append方法,但失败了。是否可以使用var child=$?原始元素有子元素吗?因为您将新的div包装在原始divyep的周围,这是错误的,请阅读一些关于有效html的内容selects@Majed你到底为什么要这么做?啊。那就有道理了!胡萨!你真是天赐之物。谢谢你帮了我的忙!它奏效了:
<script>
    $(document).ready(function(){
        $(".dropdown").dropdown();
    });
</script>
var child = $("<div class='dropDownJsChild' />");
original.after(child);