Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.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
Jquery 遍历值的基本JSON数组时出现问题_Jquery_Json - Fatal编程技术网

Jquery 遍历值的基本JSON数组时出现问题

Jquery 遍历值的基本JSON数组时出现问题,jquery,json,Jquery,Json,我很不好意思问,但我真的很难从一些JSON中获取值。我似乎无法正确访问值数组 我可以从这个Json(fiddle:)获取值,它使用以下格式的Json响应: { "items": [ { "tags": [ "jqgrid" ], "owner": { "reputation": 21, "user_id":

我很不好意思问,但我真的很难从一些JSON中获取值。我似乎无法正确访问值数组

我可以从这个Json(fiddle:)获取值,它使用以下格式的Json响应:

{
    "items": [
        {
            "tags": [
                "jqgrid"
            ],
            "owner": {
                "reputation": 21,
                "user_id": 3038042,
                "user_type": "registered",
                "accept_rate": 70,
                "profile_image": "https://www.gravatar.com/avatar/819ef95bfca002204f5bd00654fb9957?s=128&d=identicon&r=PG&f=1",
                "display_name": "Amete",
                "link": "http://stackoverflow.com/users/3038042/amete"
            },
            "is_answered": false,
            "view_count": 5,
            "answer_count": 1,
            "score": 1,
            "last_activity_date": 1423648956,
            "creation_date": 1423605704,
            "last_edit_date": 1423648956,
            "question_id": 28442722,
            "link": "http://stackoverflow.com/questions/28442722/jqgrid-set-focus-on-selectrow-not-working",
            "title": "JqGrid Set Focus on SelectRow not working"
        }
    ]
}
但是我不能对下面的Json做同样的事情()

我知道我没有正确访问阵列,但我尝试的一切都失败了

此外,使用JQuery$.getJSON方法看起来更简单,但我也无法做到这一点


任何建议都将不胜感激。

您的第二组数据是一个纯数组,顶层没有名为
项的命名元素

使用

不是

var item = result.item[i];
JSFiddle:


我将Ajax回调转换为IIFE来测试数据。

在第二个json中没有


您需要使用
var item=result[i]

失败的小提琴没有获得任何数据,它当然被同一来源停止。。。我真傻。。。实际上,我实际上使用的是一个web服务——为了简单起见,我只使用了示例JSON。我认为web服务绕过了整个“同源策略”,但是,采用下面@TrueBlueAusie的方法,我发现从我的服务中复制数据并将其声明为变量是可行的。这是我无法得到任何回应的主要原因。你能解释一下为什么stackoverflow API不受同源策略的影响,而我的API受同源策略的影响吗?好啊因此,最终我一直受到同一原产地政策的影响。这使得测试我的API并在本地(开发中)使用它们变得不可能。最终,我在服务器上启用了CORS,解决了下面的问题,并使用真正的API工作启用了我的测试。我使用的是.NET和WebAPI,因此下面的文章为我解决了这个问题:在发布之前始终检查准确的重复答案:)我是按照您发布的内容编写的,因此不显示答案,只显示通知谢谢二者都我感谢所有的帮助。这是一种友好的姿态。谢谢@TrueBlueAussie!这很有效,但我用我的真实web服务(而不是示例)尝试了您的方法,但仍然没有得到任何数据。我想这是由于同源策略的限制,但我认为web服务API绕过了这一限制?缺乏数据是我之前多次尝试获得结果失败的原因。根据您的方法,这里有一个可用的fiddle:Failed fiddle使用web服务:此处:。很明显,我必须在这里认真提高技能。这两个jsfiddle在我看来都是一样的。第二个应该使用Web服务吗?是的,谢谢@TrueBlueAussie,应该是的。古怪的我有两扇开着的窗户。。。两者都是相同的URL。它没有更新道歉。下面是一个正确的版本,即在
success:
函数中缺少
}
。好的缩进是你的朋友:)是的,谢谢。我确实认为我最好还是用JSHint检查一下,但你太快了,以至于比我快了。:)仍然没有响应输出吗?虽然JSON被声明为变量时会出现错误。。。
var item = result[i];
var item = result.item[i];