我想将某些元素附加到具有唯一ID的另一个div中的div。
<div data-role="collapsible" id="49617" class="ui-collapsible ui-collapsible-inset ui-corner-all">
<h2 class="ui-collapsible-heading">
</h2>
<div class="ui-collapsible-content" aria-hidden="false"></div>
</div>
父div data-role="collapsible"
的id是动态的。子div ui-collapsible-content
由我使用的框架创建。如何通过单击按钮将元素添加到此div中。
这是我下面的jQuery代码,变量stopId是父div的id。它附加到父div而不是所需的子div。
$("<h2 />").text("Buses Due").appendTo("#" + stopId);
$.each(data.arrivals, function(i,item){
$("<span/>")
.text(item.estimatedWait)
.attr("class", "busListing time")
.appendTo("#" + stopId);
$("<span/>")
.text(item.routeName + ' to ' + item.destination)
.attr("class", "busListing info")
.appendTo("#" + stopId);
$("<br/>")
.appendTo("#" + stopId);
});
答案 0 :(得分:2)
使用.appendTo("#" + stopId + ' > .ui-collapsible-content')
例如:
$("<h2 />").text("Buses Due").appendTo("#" + stopId);
var el = $("#" + stopId).children('.ui-collapsible-content');
$.each(data.arrivals, function(i,item){
$("<span/>")
.text(item.estimatedWait)
.attr("class", "busListing time")
.appendTo(el);
$("<span/>")
.text(item.routeName + ' to ' + item.destination)
.attr("class", "busListing info")
.appendTo(el);
$("<br/>")
.appendTo(el);
});
答案 1 :(得分:1)
我不完全确定你为什么要使用(“#”+ stopId)。将stopId设置为父div更有意义,而不仅仅是id。附加时,可以使用$('child','parent')设置找到选择器的上下文。所以你会做点像......
.appendTo('.ui-collapsible-content', parentDiv); // parentDiv = "#" + stopId
基本上,这会在父级中找到.ui-collapsible-content。
答案 2 :(得分:0)
试试这个
.appendTo($("#" + stopId).children('ui-collapsible-content'));