jQuery每个只影响最后一项

时间:2017-05-01 22:02:53

标签: javascript jquery

我的每个陈述只会影响最后一个元素。

为什么?



$("span").each(function(index) {
  var $this = $(this);
  $(".divers-details").html($this.text() + "<br>");
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="wine-name"><span>Cabernetj </span></div>
<div class="wine-name"><span>Caberneth </span></div>
<div class="wine-name"><span>Cabernetg </span></div>
<div class="wine-name"><span>Cabernetl</span></div>
<br/>
<p class="divers-details"></p>
&#13;
&#13;
&#13;

http://jsfiddle.net/UJgAa/931/

1 个答案:

答案 0 :(得分:1)

这一行是你的问题......

  $(".divers-details").html( $this.text() + "<br>");

html方法不会附加到.divers-details div,它只是用新值替换其中的任何内容 - 这意味着它会替换内容。

您要做的是使用append方法(顾名思义)附加一个值。换句话说......

  $(".divers-details").append( $this.text() + "<br>");

您可以在http://api.jquery.com/append/

了解有关追加方法的更多信息