試圖將我附加的div限制爲4,我發現了一個簡單的答案,但是當我在兩個不同的$.each()
中使用它時,只有兩個$.each()
中的一個獲得了限制。在jQuery中限制附加div
說我有 - 這將返回4個div,但如果我有兩個這些1將有4個div和其他將沒有項目追加。
var maxAppend = 0;
$.each(data.drinks.Upsell, function (index, value) {
if (maxAppend >= 4) return;
maxAppend++;
$('#rcmd_snacks_list').append(
'<div class="col-md-3 col-sm-6"> <div class="thumbnail">' +
'<div class="image">' + '<img src="./assets/imgs/' + value.image + '" alt="' + value.name + '" class="img-responsive"> </div>' +
'<div class="caption">' +
'<p class="item-name">' + value.name + '</p>' +
'<p class="price">£' + parseFloat(value.price).toFixed(2) + '</p>' +
'<div class="row"> <button data-key="' + value.name + '" class="btn btn-success btn-sm addToCart" onClick="openNutritionInfo()"> <i class="fa fa-info fa-1x"></i> Nutrition Info</button> </div>' +
'</div>' +
'</div> </div>'
);
});
同上 -
$.each(data.snacks.Upsell, function (index, value) {
if (maxAppend >= 4) return;
maxAppend++;
$('#rcmd_drinks_list').append(
'<div class="col-md-3 col-sm-6"> <div class="thumbnail">' +
'<div class="image">' + '<img src="./assets/imgs/' + value.image + '" alt="' + value.name + '" class="img-responsive"> </div>' +
'<div class="caption">' +
'<p class="item-name">' + value.name + '</p>' +
'<p class="price">£' + parseFloat(value.price).toFixed(2) + '</p>' +
'<div class="row"> <button data-key="' + value.name + '" class="btn btn-success btn-sm addToCart" onClick="openNutritionInfo()"> <i class="fa fa-info fa-1x"></i> Nutrition Info</button> </div>' +
'</div>' +
'</div> </div>'
);
});
我預計他們將追加4個格不是(4和無)。
看起來你的兩個div有相同的id'rcmd_drinks_list'。這就是爲什麼它不起作用。你能不能也粘貼你的html –
他們共享相同的計數變量。 : -/ – Vic
在執行第二個'$ .each()'之前,您是否將'maxAppend'重新初始化爲0? –