JSON & Dynamic jQuery Mobile Listview



我有一个JSON文件,其中包含3个对象的数组。

当我想显示一个对象的属性时,它会显示它的名称,例如,如果我有一个对象car,它有一个名为name的属性,并且在我写car.name时值为"FIAT",它会在列表视图上显示"CAR.name",而不是FIAT。

这是我的密码。


$.getJSON("res/jsonFile/produits.json", function(products) {
    $('#productList').empty();
    $.each(products, function(i, product) {
        $('#productList').append(productLink(product));
    });
    $('#productList').listview('refresh');
});
function productLink(product) {
    var link="<li>" +
        "<img src=product.pic>" +
        "" +
        "<h2>product.name</h2>" +
        "<p>product.desc</p>" +
        "<p>product.price</p>" +
        "</li>";
    return link;
}

这是我的JSON文件

[
    {
    "name": "Coca Cola",
    "desc": "Coca Cola",
    "price": 10,
    "qty": 100,
    "pic": "img/coca cola.jpg"
    },
    {
    "name": "Fanta",
    "desc": "Fanta mini",
    "price": 10,
    "qty": 100,
    "pic": "img/fanta.jpg"
    },
    {
    "name": "Salade niçoise",
    "desc": "Salade",
    "price": 15,
    "qty": 100,
    "pic": "img/nicoise.jpg"
    }
]

在函数中,您打印的是变量名,而不是它们的值。改为这样使用:

function productLink(product) {
    var link="<li>" +
        "<img src=" + product.pic + ">" +
        "<h2>" + product.name + "</h2>" +
        "<p>" + product.desc + "</p>" +
        "<p>" + product.price + "</p>" +
        "</li>";
    return link;
}

最新更新