在三个不同的部分/ div之间共享相同的ajax结果

时间:2015-04-13 14:26:24

标签: javascript jquery ajax html5

我的ajax调用返回27个结果,我需要将这些结果分成三个相等的部分,因此每个部分有9个结果,如下所示。

HTML:

<div id="content">

   <section>
   </section>

   <section>
   </section>

   <section>
   </section>

</div>

JS 看起来大致如此。目前,所有27个结果都在每个部分内部。如何为每个部分定义方法,仅在其中包含9个结果?

var query = "http://ajaxcallfromservice&maxResults=27";
$.ajax({
    url: query,
    async: true,
    dataType: "jsonp",
    success: function (result) {
        ajax.parseJSONP(result);
    }
});

var ajax = {
    parseJSONP : function(result) {
        $.each(result.items, function(i, row) {
                $('section').append('<h2'+ row.stuffWhatINeed +'</h2>');                    
        });
    }
}

非常感谢任何建议。

1 个答案:

答案 0 :(得分:1)

您需要附加到正确的部分。假设您想要第一部分中的前9个等等......

var ajax = {
  parseJSONP : function(result) {

    var sections = $('section');
    var perSection = Math.ceil(result.items.length / sections.length);   // will be 9

    $.each(result.items, function(i, row) {
      var secNo = Math.floor(i / perSection);  // 0 for 0..8, 1 for 9..17, 2 for 18..26

      sections[secNo].append('<h2>'+ row.stuffWhatINeed +'</h2>');                    
    });
  }
}