【问题标题】:How can I use .each for div if I use .append in AJAX?如果我在 AJAX 中使用 .append,如何将 .each 用于 div?
【发布时间】:2015-11-02 02:04:37
【问题描述】:

我发送 AJAX 并获取包含许多 div 元素 (.card) 的 HTML,我使用 .append 在每个 AJAX 请求后添加新的 .card 元素(如无限滚动)。如何在一个、两个、三个...等 AJAX 请求之后对页面上的所有 .card 使用 .each?

$( document ).ready(function() {
$('.card').each(function(i) {
   addMarker(i);
}
});

$( document ).ajaxComplete(function() {
$('.card').each(function(i) {
   addMarker(i);
}
});

不工作。

我在每个 AJAX 请求的新 .card div 上从零开始计数。

【问题讨论】:

  • @VasilyK,你想做什么?您想要页面中的元素数量吗?

标签: javascript jquery html css ajax


【解决方案1】:

如果您有一个容器 <div class="container"></div> 来添加卡片 <div class="card"></div>,那么您应该使用以下脚本:

$(document).scroll(function(){
    $.ajax({
        method: "GET",
        url: "file.php",
        success: function(data){
            data = $.parseHTML(data);
            $.each( data, function( i, el ) {
                if (el.className == 'card') {
                    $(el).appendTo('.container');
                };
            });

            $('.card').each(function(i) {
                addMarker(i);
            });
        }
    });
});

【讨论】:

    【解决方案2】:

    试试我的方法,我想它会帮助你。

    $(function(){
    $.ajax({
        method: "GET",
        url: "data.action",
        success: function(data){
            $(data).find(".card").each(function(i, o){
                    $(".container").append(o);
            });
            $('.card').each(function(i) {
                addMarker(i);
            });
        }
      });
    });
    

    【讨论】:

      猜你喜欢
      • 2012-01-20
      • 2016-08-20
      • 2018-07-07
      • 1970-01-01
      • 2022-11-10
      • 2012-07-04
      • 2018-03-30
      • 2017-08-19
      • 1970-01-01
      相关资源
      最近更新 更多