Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/430.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在JSON'内搜索;s属性_Javascript_Jquery_Filter - Fatal编程技术网

Javascript 在JSON'内搜索;s属性

Javascript 在JSON'内搜索;s属性,javascript,jquery,filter,Javascript,Jquery,Filter,我有这样一个JSON: var parse = [ { "variation_id":"34", "attributes":{ "attribute_pa_rozmiar":"m" }, "image_src":"http://localhost/Fraise-WP/wp-content/uploads/2013/06/Jellyfish-300x300.jpg", "image_link":"http:

我有这样一个JSON:

    var parse = [
   {
      "variation_id":"34",
      "attributes":{
         "attribute_pa_rozmiar":"m"
      },
      "image_src":"http://localhost/Fraise-WP/wp-content/uploads/2013/06/Jellyfish-300x300.jpg",
      "image_link":"http://localhost/Fraise-WP/wp-content/uploads/2013/06/Jellyfish.jpg",
      "image_title":"Jellyfish",
      "price_html":"",
      "availability_html":"<p class=\"stock \">10 w magazynie</p>",
      "sku":"",
      "weight":"4 kg",
      "dimensions":"",
      "min_qty":1,
      "max_qty":"10",
      "backorders_allowed":false,
      "is_in_stock":true,
      "is_downloadable":false,
      "is_virtual":false,
      "is_sold_individually":"no"
   },
   {
      "variation_id":"33",
      "attributes":{
         "attribute_pa_rozmiar":"s"
      },
      "image_src":"http://localhost/Fraise-WP/wp-content/uploads/2013/06/Desert-300x300.jpg",
      "image_link":"http://localhost/Fraise-WP/wp-content/uploads/2013/06/Desert.jpg",
      "image_title":"Desert",
      "price_html":"",
      "availability_html":"<p class=\"stock \">5 w magazynie</p>",
      "sku":"",
      "weight":"4 kg",
      "dimensions":"",
      "min_qty":1,
      "max_qty":"5",
      "backorders_allowed":false,
      "is_in_stock":true,
      "is_downloadable":false,
      "is_virtual":false,
      "is_sold_individually":"no"
   }
][
   {
      "variation_id":"34",
      "attributes":{
         "attribute_pa_rozmiar":"m"
      },
      "image_src":"http://localhost/Fraise-WP/wp-content/uploads/2013/06/Jellyfish-300x300.jpg",
      "image_link":"http://localhost/Fraise-WP/wp-content/uploads/2013/06/Jellyfish.jpg",
      "image_title":"Jellyfish",
      "price_html":"",
      "availability_html":"<p class=\"stock \">10 w magazynie</p>",
      "sku":"",
      "weight":"4 kg",
      "dimensions":"",
      "min_qty":1,
      "max_qty":"10",
      "backorders_allowed":false,
      "is_in_stock":true,
      "is_downloadable":false,
      "is_virtual":false,
      "is_sold_individually":"no"
   },
   {
      "variation_id":"33",
      "attributes":{
         "attribute_pa_rozmiar":"s"
      },
      "image_src":"http://localhost/Fraise-WP/wp-content/uploads/2013/06/Desert-300x300.jpg",
      "image_link":"http://localhost/Fraise-WP/wp-content/uploads/2013/06/Desert.jpg",
      "image_title":"Desert",
      "price_html":"",
      "availability_html":"<p class=\"stock \">5 w magazynie</p>",
      "sku":"",
      "weight":"4 kg",
      "dimensions":"",
      "min_qty":1,
      "max_qty":"5",
      "backorders_allowed":false,
      "is_in_stock":true,
      "is_downloadable":false,
      "is_virtual":false,
      "is_sold_individually":"no"
   }
]
var parse=[
{
“变更id”:“34”,
“属性”:{
“属性_pa_rozmiar”:“m”
},
“图像\u src”:http://localhost/Fraise-WP/wp-content/uploads/2013/06/Jellyfish-300x300.jpg",
“图像链接”:http://localhost/Fraise-WP/wp-content/uploads/2013/06/Jellyfish.jpg",
“图片标题”:“水母”,
“价格”:“,
“可用性html”:“10 w magazynie

”, “sku”:“, “重量”:“4公斤”, “尺寸”:“, “最小数量”:1, “最大数量”:“10”, “允许延期交货”:错误, “是否有库存”:正确, “是否可下载”:false, “是虚拟的”:假, “是否单独出售”:“否” }, { “变更id”:“33”, “属性”:{ “属性_pa_rozmiar”:“s” }, “图像\u src”:http://localhost/Fraise-WP/wp-content/uploads/2013/06/Desert-300x300.jpg", “图像链接”:http://localhost/Fraise-WP/wp-content/uploads/2013/06/Desert.jpg", “图片标题”:“沙漠”, “价格”:“, “可用性html”:“5 w magazynie

”, “sku”:“, “重量”:“4公斤”, “尺寸”:“, “最小数量”:1, “最大数量”:“5”, “允许延期交货”:错误, “是否有库存”:正确, “是否可下载”:false, “是虚拟的”:假, “是否单独出售”:“否” } ][ { “变更id”:“34”, “属性”:{ “属性_pa_rozmiar”:“m” }, “图像\u src”:http://localhost/Fraise-WP/wp-content/uploads/2013/06/Jellyfish-300x300.jpg", “图像链接”:http://localhost/Fraise-WP/wp-content/uploads/2013/06/Jellyfish.jpg", “图片标题”:“水母”, “价格”:“, “可用性html”:“10 w magazynie

”, “sku”:“, “重量”:“4公斤”, “尺寸”:“, “最小数量”:1, “最大数量”:“10”, “允许延期交货”:错误, “是否有库存”:正确, “是否可下载”:false, “是虚拟的”:假, “是否单独出售”:“否” }, { “变更id”:“33”, “属性”:{ “属性_pa_rozmiar”:“s” }, “图像\u src”:http://localhost/Fraise-WP/wp-content/uploads/2013/06/Desert-300x300.jpg", “图像链接”:http://localhost/Fraise-WP/wp-content/uploads/2013/06/Desert.jpg", “图片标题”:“沙漠”, “价格”:“, “可用性html”:“5 w magazynie

”, “sku”:“, “重量”:“4公斤”, “尺寸”:“, “最小数量”:1, “最大数量”:“5”, “允许延期交货”:错误, “是否有库存”:正确, “是否可下载”:false, “是虚拟的”:假, “是否单独出售”:“否” } ]
我需要的是在
属性
中运行搜索,查找此对象是否有,例如
属性_pa_rozmiar=m
,并获得相应的
图像_src
。很抱歉这么臃肿的JSON,但这是我唯一能把它弄出来的方法

我尝试根据找到的示例运行$.each和$.map函数,但都不起作用

请尝试:


试试这个。。它使用$。每个,工作正常

      $.each(parse, function(i, item) {
          $.each(item, function(j, innerItem){
           // perform search on innerItem.a or innerItem.b
          });
      });
更新:

根据你的最新更新,你的JSON是无效的。在变量数据的中间有额外的数据。 我已经创建了另一个JSFIDLE来解决您的问题。请参阅正在运行的演示:


PS-当你必须发布这种长代码时,你可以使用在线格式化程序,然后发布它。

你能告诉我们你是如何尝试的吗?我的JSON是这样的:
var parse=[{“attributes”:{“attributes”:“s”},…]
。所以我使用了`$.each(parse.attributes,function(I,v){if(v.attributes.search(new RegExp(/s/I))!=-1){alert(v.attributes});但它在控制台中返回“uncaughttypeerror:无法读取未定义的属性'length'”。@TomekBuszewski:您想要
$。[…](parse,
then-
parse
没有
属性,但是是一个arrayReturns
未捕获类型错误:无法读取未定义的属性“length”;不适用于您呈现的对象。对于您在注释中发布的对象,它将是
$.grep(parse,function(v){return v.attributes.attributes\u.indexOf(“s”)!=-1;})
在控制台中获取了大量未定义的
信息。知道为什么吗?我已经为同一个控制台创建了一个JSFIDLE,请查看它是否正在运行。我在这里介绍的解决方案有一个问题:您能帮我吗?
      $.each(parse, function(i, item) {
          $.each(item, function(j, innerItem){
           // perform search on innerItem.a or innerItem.b
          });
      });