1

我有以下jsfiddle,代码如下:

HTML:

<div id="one" style="display:none">One</div>
<div id="two" style="display:none">Two </div>
<div id="three" style="display:none">Three</div>
<div id="output"></div>

​<strong>jQuery:

$("#output").html($("#one,#two").html());

我可以让它与一个选择器一起工作,我想做的是使用多个选择器,我似乎走错了路。有人可以指出我正确的方向吗?

谢谢

4

4 回答 4

7

.html()只会从匹配选择器规则的第一个元素中获取内容:

获取匹配元素集中第一个元素的 HTML 内容。

来源:http ://api.jquery.com/html/


如果您想要来自两个元素的内容,您应该这样做:

$("#output").html($("#one").html() + $("#two").html());

见演示:http: //jsfiddle.net/sshg7/2/

于 2012-08-15T10:05:57.443 回答
3

.text()如果您只想从这些 div 中获取文本,则可以使用:

$("#output").html($("#one, #two, #three").text())

演示

于 2012-08-15T10:07:38.440 回答
0

或者:

$("#output").html(function() {
  var html = [];
  $("#one,#two").each(function() {
     html.push(this.innerHTML);
  });
  return html.join("");
});
于 2012-08-15T10:10:28.827 回答
0

如果有很多元素:

$("#output").html(
  $(selector_for_many_elements).map(function () {
    return $(this).html();
  }).get().join(', ');
);
于 2012-08-15T10:22:10.133 回答