0

我有一个 json 字符串,其中包含这些产品、尺寸、类型、价格、...

一个看起来像这样:

"products": [
    {
        "id": 10,
        "product_prices": [
            {
                "product_size_id": 2,
                "price": "2.0"
            },
            {
                "product_size_id": 3,
                "price": "3.0"
            },
            {
                "product_size_id": 5,
                "price": "4.0"
            },
            {
                "product_size_id": 6,
                "price": "5.0"
            }
        ]

现在我发现这篇文章要查询并且小提琴正在工作:How to filter a Multi-dimension JSON object with jQuery.grep()

但是,当我尝试这样做时,它会返回所有对象,而不仅仅是 id=20 的产品

这是我正在使用的代码:

json.data = jQuery.grep(json.products,function(element, index){ return element.id=20})

console.log(json.data);

这是我第一次忍受我的 json 体验 :-)

我为它创建了一个小提琴:

http://jsfiddle.net/rept/TC25X/

谢谢!

4

1 回答 1

2

用于==比较值:

json.data = jQuery.grep(json.products, function (element, index) {
    return element.id == 20;
});

这是你的小提琴:http: //jsfiddle.net/TC25X/1/

于 2013-01-22T00:55:50.670 回答