使用jquery重新组合元素

时间:2010-06-07 17:09:29

标签: jquery

我的网页上有很多信息,如下所示:

<div class="messages">A</div>
<div class="messages">B</div>
<div class="messages">A</div>
<div class="messages">C</div>

有没有任何方法可以使用jQuery(没有PHP)来计算和重组2 div A,如下所示:

<div class="messages">A</div><span>2</span>
<div class="messages">B</div>
<div class="messages">C</div>

谢谢。

2 个答案:

答案 0 :(得分:2)

你可以从这样的事情开始:

$('div.messages:contains(A)');

如何将其构建到其他代码中将取决于您提前知道的内容。

如果你不知道可能的值是什么,你可能会得到这样的结果:

var $messages = $('div.messages');
var counts = {};
$messages.each(function (i, div) {
  var $div = $(div);
  if (counts[$div.text()] == undefined) { counts[$div.text()] = 0; }
  ++counts[$div.text()];
});

这将根据他们的内容计算div。然后你添加循环计数的东西。

答案 1 :(得分:0)

这应该可以帮助你:)


"use strict";
/*global $*/
$(function () {
  var selector = '.messages'; 
  $(selector).each(function (i, div) {
    var similar = $(selector + ':gt(' + i + ')').filter(function (index) {
      return $(this).text() === $(div).text();
    });

    if (similar.length) {
      var count = similar.remove().length + 1;

      $(this).after(count);
    }
  });
});

wbr,罗马