0

PHPページに、結果のリストがあります。円グラフを表示するために、日付ごとの結果の数を取得したいと思います。

それは私が持っているものです:

<span id="tweetdate_1_12-11-2012">...</span> 
<span id="tweetdate_2_12-11-2012">...</span>
<span id="tweetdate_3_12-11-2012">...</span> 
<span id="tweetdate_4_12-11-2012">...</span>
<span id="tweetdate_1_11-11-2012">...</span> 
<span id="tweetdate_2_11-11-2012">...</span>
<span id="tweetdate_1_10-11-2012">...</span> 
<span id="tweetdate_2_10-11-2012">...</span>

javascriptで取得したい:1。次のような日付:10-11-2012、11-11-2012、12-11-2012 2.日付別の結果の数:2、2、4

日付を復元しましたが、順序が正しくなく(最初に古い)、これらの日付の数ではありません。

出来ますか?

ありがとう

4

3 に答える 3

1

次のjQueryコードを使用でき、日付をキーとして持つオブジェクトを取得します。

$(function(){
 var ret = {};
  $('span[id^="tweetdate"]').each(function(){
      var tmp_array = this.id.split('_');
      var date = tmp_array[tmp_array.length-1];
      if(ret[date]){
          ret[date] ++;
      }else{
          ret[date] = 1;
     }
  });
  console.log(ret);
});

結果は順調に見えます。または、わからない場合は、使用する前に並べ替えることができます。

于 2012-11-13T09:03:58.583 に答える
0

あなたはこの方法でそれを行うことができます、

jqueryコード

<script language="javascript" type="text/javascript" src="jquery-1.8.2.js"></script>
<script language="javascript" type="text/javascript">
$(document).ready(function() {
   count = 0;
   $('span').each(function(){
     if($(this).attr('id').match(/12-11-2012/)) {
          count++;
     }
  });
  $('#count').html(count);
}); 
</script>

htmlコード

<span id="tweetdate_1_12-11-2012">...</span> 
<span id="tweetdate_2_12-11-2012">...</span>
<span id="tweetdate_3_12-11-2012">...</span> 
<span id="tweetdate_4_12-11-2012">...</span>
<span id="tweetdate_1_11-11-2012">...</span> 
<span id="tweetdate_2_11-11-2012">...</span>
<span id="tweetdate_1_10-11-2012">...</span> 
<span id="tweetdate_2_10-11-2012">...</span>
<div id="count"></div>
于 2012-11-13T08:29:59.387 に答える
0

もう少し簡潔:

var count = $('span[id*=12-11-2012]').length;
$('#count').html(count);

http://api.jquery.com/attribute-contains-selector/

于 2012-11-13T08:40:44.057 に答える