Javascript 从JSON对象读取数据时未定义

Javascript 从JSON对象读取数据时未定义,javascript,jquery,jstree,Javascript,Jquery,Jstree,以下是我的代码: $(function() { var arrayCollection = ['555testing', { "id" : "1", "parent" : "555testing", "text" : "555 Inc.", "org" : "One", }, { "id" : "2", "parent" : "555testing", "text" : "Tes

以下是我的代码:

$(function() {

    var arrayCollection = ['555testing', {
        "id" : "1",
        "parent" : "555testing",
        "text" : "555 Inc.",
  "org" : "One",
    }, {
        "id" : "2",
        "parent" : "555testing",
        "text" : "Test Company",
  "org" : "Two",
    }, {
        "id" : "3",
        "parent" : "555 Inc.",
        "text" : "Test2 Company",
  "org" : "Three",
    }, {
        "id" : "4",
        "parent" : "555 Inc.",
        "text" : "Test3 Company",
  "org" : "Four",
    }, {
        "id" : "5",
        "parent" : "555 Inc.",
        "text" : "Test4 Company",
  "org" : "Five",
    }];
    //alert(arrayCollection);

    $('#jstrees').jstree({

        'core' : {

            'data' : arrayCollection
        }
    }).on("select_node.jstree", function(e, data) {

        var node_text2 = (data.node.org);
        alert(node_text2);
    });
});
我想从json对象获取所有值。但是当尝试获取
org
的值时,我得到了
未定义的

因为所有其他属性的工作方式都是, 我在这个代码中得到了价值

var node_text2 = (data.node.parent);
alert(data.node["parent"]); 
但是我没有得到
org


让我知道,我如何获得该值。

您的JSON在“text”:“Test”和“orgId”之间有一个输入错误:“2”应该只有一个逗号

{ "id" : "155", "parent" : "MyData", "text" : "Test", , "orgId":"2"} 
//                                                    ^
应该是

{ "id" : "155", "parent" : "MyData", "text" : "Test", "orgId":"2"}
//                                                   ^

检查json,在“orgId”:“2”

下次检查您的json时,有许多非常有用的在线工具,如:

还有一些不可打印的特殊unicode字符,请检查服务器端代码以防止输出这些字符:


你弄错了

[{"parent":"#","id":"1","text":"One","orgId":66},{"parent":"‌​Data2","id":"2","tex‌​t":"Two","orgId":64}‌​]

最好先从您得到响应的地方查看服务或位置。还可以尝试使用任何在线工具,如json格式化程序或在线json编辑器等。

在您的对象中,您有
orgId
,而不是
orgId
,因此这是有意义的。嗨,Seb,这是我的键入错误,在我的代码中,所有地方的名称都是相同的。只有当你向我们展示真实的代码时,我们才能提供帮助。是的,我添加了有问题的原始JSONArray。我不会称之为“缺失值”,而是“输入错误”。你是对的,如果它与第一个对象具有相同的模式,那么它就是输入错误,在这里,我手动添加了json,但在我的代码中,从JSONArray获取数据,所以这不是问题。所以,它不能用正确的语法工作?那么我们可以使用JSONArray行吗?嗨,斯拉夫,这里我手动添加了json,但是在我的代码中从JSONArray获取数据,所以这不是问题。你可以发布打印的数组吗?是的,我得到了这样的数组。[{“parent”:“#“,“id”:“1”,“text”:“One”,“orgId”:66},{“parent”:“Data2”,“id”:“2”,“text”:“Two”,“orgId”:64}]。它是唯一具有整数值的参数。。。不确定它是否有用有些不可打印的特殊unicode字符,请检查我的更新答案我将json更改为[{“parent”:“#”,“id”:“1”,“text”:“One”,“orgId”:“66”},{“parent”:“Data2”,“id”:“2”,“text”:“Two”,“orgId”:“64”}使用了相同的错误。您的json仍然有错误,请尝试查看这是一些间距问题,但是得到了其他属性的值,比如id、text等,所以json格式没有问题。