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","text":"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格式没有问题。