当前位置: 首页 > 知识库问答 >
问题:

在“each”函数中使用jQuery查询JSON数据

姚伟
2023-03-14

我是JSON新手,正在尝试寻找一种查询JSON数据的方法,并将信息导入适当的

在我的JSON数据中,我将其设置为:

[
    {
        "item": "aroma",
        "title": "Aromatherapy Oils",
        "price": "$10.00",
    },

    {
        "item": "ah-chairbamboo",
        "title": "Modern Bamboo Chair",
        "price": "$100.00",
    },
    {
        "item": "hc-mirror",
        "title": "Cordless LED Lighting Pivoting Vanity Mirror",
        "price": "$45.00",
    },
    {
        "item": "macfrc",
        "title": "French Macarons",
        "price": "$15.00",
    }
]

如果我只想从JSON表中获取标题,其中“aroma”是项目,并将其附加到div中的产品容器中,该怎么办?我的代码现在获取产品代码的方式是:

$(".v65-productDisplay a").each(function(){
    var productHref = $(this).attr("href");
    var productCode = productHref.substring(19,productHref.length);

这是有效的,因为我已经提醒了productCode,它们都是正确的。

我希望这个JSON查询显然位于each函数中,以便在页面上的每个产品上运行。在英语中,我想说“如果项目值与JSON表中的产品代码匹配,我想打印出标题和价格”(是的,我知道这不是很好的英语…)。

我第一次尝试查询它(并警告它的值)是在这里。这是在:

$(".v65-productDisplay a").each(function(){
var productHref = $(this).attr("href");
var productCode = productHref.substring(19,productHref.length);

$.getJSON("/v/vspfiles/data/productinfo.js", function (data) {
            $.each(data, function () {
                  if (productCode = this['item'])
                     alert(this['price']); 
            });
        });

});

但这并没有奏效。抱歉,如果这很混乱,我正试着自己解开。非常感谢任何帮助。

编辑

下面是PSCoder回答后的一个新的更新片段,它仍然不完全工作:

$.getJSON("/v/vspfiles/data/productinfo.js", function (data) {
        $.each(data, function (i,o) {
              if (productCode == o.item)
                 alert(o.price); 
        });
    });

共有1个答案

长孙硕
2023-03-14

你可以这样做,也许:

$.getJSON("/v/vspfiles/data/productinfo.js", function (data) {
            $.each(data, function () {
                  if (productCode.trim() === this.item)
                     console.log(this['price']); 
            });
        });
 类似资料:
  • 问题内容: 我在名为data的变量中返回了以下JSON。 这是GETS返回的JSON … 我试图使用$ .each遍历整个集合,但是遇到了警报显示未定义的问题。我尝试了很多不同的语法,但似乎无法弄清楚。 我正在使用的jQuery是 谁能指出我正确的方向? 编辑 这是我用来获取数据的代码 这是在回调时被调用的函数 编辑2 这有点使我感到困惑,根据文档,它应该可以正常使用,但事实并非如此。据提琴手说,

  • 这是我的密码。但在while循环中的函数each()处出错。 从一个数组返回当前键和值对,并前进数组游标each(数组$array):数组未定义函数“each”。intelephense(1010) 请帮帮我.

  • 本文向大家介绍jQuery中$.each()函数的用法引申实例,包括了jQuery中$.each()函数的用法引申实例的使用技巧和注意事项,需要的朋友参考一下 语法: 值得一提的是,forEach 可以很方便的遍历数组和 NodeList ,jQuery 中的 jQuery 对象本身已经部署了这类遍历方法,而在原生 JavaScript 中则可以使用 forEach 方法,但是 IE 并不支持,因

  • 问题内容: 我在尝试解决JQuery $ .each()迭代时遇到一些真正的困难 这是我的数组,为方便起见,限制了结果 我的第一个$ .each迭代效果很好,但是“ EVENTS”的子迭代是我遇到问题的地方 我的第一个$ .each()函数 我无法使用的第二个$ .each()函数 我在(松散地)理解这不是单个JSON对象,而是对象的JSON数组,但不了解第一个版本是否有效,第二个版本为什么不起作

  • 我有一个复选框列表,想用复选框的所有名称做一些事情。但是我似乎无法访问HTML对象: 这将产生TypeError:elem.hide不是函数 但是console.log(elem)显示: 如何访问每个元素?

  • 如果我在mysql数据库的列中有如下json 如何在mysql中选择同一对象名为'John'且checked=true的所有行。 json对象可能有更多的键,并且键可能没有特定的顺序。