3

我想将某些元素附加到另一个具有唯一 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>

父 divdata-role="collapsible"有一个动态的 id。子 divui-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);
});
4

3 回答 3

3

利用.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);
});
于 2013-04-30T14:17:48.043 回答
1

我不完全确定你为什么使用(“#”+ stopId)。将 stopId 设置为父 div 更有意义,而不仅仅是 id。追加时,您可以使用 $('child', 'parent') 设置选择器所在位置的上下文。所以你会做类似的事情......

.appendTo('.ui-collapsible-content', parentDiv); // parentDiv = "#" + stopId

基本上,这会在父级中找到 .ui-collapsible-content。

于 2013-04-30T14:24:10.707 回答
0

尝试这个

.appendTo($("#" + stopId).children('ui-collapsible-content'));
于 2013-04-30T14:17:48.257 回答