有点困惑,我有一个.each函数,当我使用console.log时显示JSON的所有结果但是当我尝试使用.html()输出时它只显示一个?有什么理由吗?
代码:
$(document).ready(function(){
$.get('functions/ListOrders.php', function(xml){
var newOrders = $.xml2json(xml);
$.each(newOrders.ListOrdersResult.Orders.Order, function(index, value) {
//console.log(value.AmazonOrderId);
$('#orderAmount').html("<b>Order Total:</b><br>" + index + "<br><br>");
$('#orderListing').html("<b>Order Listing:</b><br>" + value.AmazonOrderId);
});
});
});
由于
答案 0 :(得分:1)
您只获得一个结果,因为在循环中您覆盖现有值。基本上你覆盖html值。如果您使用append,则会在每次循环迭代时为现有元素添加值。
$(document).ready(function(){
$.get('functions/ListOrders.php', function(xml){
var newOrders = $.xml2json(xml);
$.each(newOrders.ListOrdersResult.Orders.Order, function(index, value) {
$('#orderAmount').append("<b>Order Total:</b><br>" + index + "<br><br>");
$('#orderListing').append("<b>Order Listing:</b><br>" + value.AmazonOrderId);
});
});
});