0

我正在尝试使用 for 循环从json文件加载产品。对于我想要有一个 div 的每个产品(一个 div 中的每个项目)。我加载没有问题,但不知何故,第一项数据看起来像是与下一项连接。我试图通过网络解决方案,我得到的最接近的是与父母有关的事情。(我还是 jQuery 的新手)。每个项目的 div 数量正常工作。

if($.isArray(item.product_Shorts)){
    $.each(item.product_Shorts, function(i, item){
        $('#CasualItems').append("<div class='title'>");
        $('.title').append(item.product_ID);
    });
}

目前我有两种产品,一种 id 为 3,另一种为 4。(为此,我显示的是 ID 而不是标题。谢谢。

在此处输入图像描述

4

4 回答 4

2

试试这个:

if($.isArray(item.product_Shorts)){
    $.each(item.product_Shorts, function(i, item){
        $('#CasualItems').append("<div class='title'>").html(item.product_ID);
    });
}
于 2013-03-29T17:52:41.680 回答
1

在第一个循环中,它附加 div 并附加产品 ID 3(到所有“标题”类)。在第二遍中,它附加一个 div,然后添加产品 ID 4(再次添加到所有 'title' 类,现在有 2 个)。

只需这样做:

$('#CasualItems').append("<div class='title'>").append(item.product_ID);
于 2013-03-29T17:53:12.167 回答
1

这是因为您将其添加到每个.title div. 尝试按id或索引。

$('.title').eq(i).append(item.product_ID);
于 2013-03-29T17:56:14.227 回答
1

试试这个,id对每个使用唯一的div

if($.isArray(item.product_Shorts)){
    $.each(item.product_Shorts, function(i, item){
        $('#CasualItems').append("<div id='title'" + (i + 1) + ">");
        $('#title' + (i + 1)).append(item.product_ID);
    });
}
于 2013-03-29T17:58:27.797 回答