无法正确访问json

时间:2014-03-22 09:11:39

标签: javascript jquery json

我有这个json结构:

 {"note":"{\"quartal\":3,\"jahr\":2014,\"id\":3,\"number\":\"23\",\"bezeichnung\":\"Konsiliaruntersuchung\",\"diagnoses\":[{\"code\":\"B01.1\",\"bezeichnung\":\"Enzephalitis nach Varizellen-Infektion [kodiere zusätzlich G05.1*]\",\"id\":40},{\"code\":\"H26.2\",\"bezeichnung\":\"Komplizierte Katarakt\",\"id\":39},{\"code\":\"H01.1\",\"bezeichnung\":\"Augenlidekzem\",\"id\":42},{\"code\":\"C63.-\",\"bezeichnung\":\"Schornsteinfegerkrebs\",\"id\":44},{\"code\":\"H90.2\",\"bezeichnung\":\"Konduktive Schwerhörigkeit\",\"id\":36},{\"code\":\"E50.4\",\"bezeichnung\":\"Vitamin-A-Mangel mit xerotischer Keratitis [kodiere zusätzlich H19.8*]\",\"id\":38},{\"code\":\"A30.1\",\"bezeichnung\":\"Polare gutartige Lepra\",\"id\":43},{\"code\":\"B01.1\",\"bezeichnung\":\"Varizellen-Enzephalitis [kodiere zusätzlich G05.1*]\",\"id\":41},{\"code\":\"B01.1\",\"bezeichnung\":\"Varizellen-Enzephalitis  (G05.1*)\",\"id\":46}],\"entrys\":[{\"nummer\":\"03322\",\"beschreibung\":\"Aufzeichnung eines Langzeit-EKG von mindestens 18 Stunden Dauer\",\"id\":22},{\"nummer\":\"02401\",\"beschreibung\":\"H2-Atemtest\",\"id\":21},{\"nummer\":\"02401\",\"beschreibung\":\"H2-Atemtest\",\"id\":20},{\"nummer\":\"02400\",\"beschreibung\":\"13C-Harnstoff-Atemtest\",\"id\":17},{\"nummer\":\"02401\",\"beschreibung\":\"H2-Atemtest\",\"id\":15},{\"nummer\":\"02400\",\"beschreibung\":\"13C-Harnstoff-Atemtest\",\"id\":2}]}","notes":["{\"quartal\":3,\"jahr\":2014,\"id\":2,\"number\":\"00\",\"bezeichnung\":\"Ambulant\",\"diagnoses\":[{\"code\":\"B01.1\",\"bezeichnung\":\"Enzephalitis nach Varizellen-Infektion [kodiere zusätzlich G05.1*]\",\"id\":40},{\"code\":\"H26.2\",\"bezeichnung\":\"Komplizierte Katarakt\",\"id\":39},{\"code\":\"H01.1\",\"bezeichnung\":\"Augenlidekzem\",\"id\":42},{\"code\":\"C63.-\",\"bezeichnung\":\"Schornsteinfegerkrebs\",\"id\":44},{\"code\":\"H90.2\",\"bezeichnung\":\"Konduktive Schwerhörigkeit\",\"id\":36},{\"code\":\"E50.4\",\"bezeichnung\":\"Vitamin-A-Mangel mit xerotischer Keratitis [kodiere zusätzlich H19.8*]\",\"id\":38},{\"code\":\"A30.1\",\"bezeichnung\":\"Polare gutartige Lepra\",\"id\":43},{\"code\":\"B01.1\",\"bezeichnung\":\"Varizellen-Enzephalitis [kodiere zusätzlich G05.1*]\",\"id\":41},{\"code\":\"B01.1\",\"bezeichnung\":\"Varizellen-Enzephalitis  (G05.1*)\",\"id\":46}],\"entrys\":[{\"nummer\":\"03322\",\"beschreibung\":\"Aufzeichnung eines Langzeit-EKG von mindestens 18 Stunden Dauer\",\"id\":22},{\"nummer\":\"02401\",\"beschreibung\":\"H2-Atemtest\",\"id\":21},{\"nummer\":\"02401\",\"beschreibung\":\"H2-Atemtest\",\"id\":20},{\"nummer\":\"02400\",\"beschreibung\":\"13C-Harnstoff-Atemtest\",\"id\":17},{\"nummer\":\"02401\",\"beschreibung\":\"H2-Atemtest\",\"id\":15},{\"nummer\":\"02400\",\"beschreibung\":\"13C-Harnstoff-Atemtest\",\"id\":2}]}","{\"quartal\":3,\"jahr\":2014,\"id\":1,\"number\":\"43\",\"bezeichnung\":\"Notfall\",\"diagnoses\":[{\"code\":\"B01.1\",\"bezeichnung\":\"Enzephalitis nach Varizellen-Infektion [kodiere zusätzlich G05.1*]\",\"id\":40},{\"code\":\"H26.2\",\"bezeichnung\":\"Komplizierte Katarakt\",\"id\":39},{\"code\":\"H01.1\",\"bezeichnung\":\"Augenlidekzem\",\"id\":42},{\"code\":\"C63.-\",\"bezeichnung\":\"Schornsteinfegerkrebs\",\"id\":44},{\"code\":\"H90.2\",\"bezeichnung\":\"Konduktive Schwerhörigkeit\",\"id\":36},{\"code\":\"E50.4\",\"bezeichnung\":\"Vitamin-A-Mangel mit xerotischer Keratitis [kodiere zusätzlich H19.8*]\",\"id\":38},{\"code\":\"A30.1\",\"bezeichnung\":\"Polare gutartige Lepra\",\"id\":43},{\"code\":\"B01.1\",\"bezeichnung\":\"Varizellen-Enzephalitis [kodiere zusätzlich G05.1*]\",\"id\":41},{\"code\":\"B01.1\",\"bezeichnung\":\"Varizellen-Enzephalitis  (G05.1*)\",\"id\":46}],\"entrys\":[{\"nummer\":\"03322\",\"beschreibung\":\"Aufzeichnung eines Langzeit-EKG von mindestens 18 Stunden Dauer\",\"id\":22},{\"nummer\":\"02401\",\"beschreibung\":\"H2-Atemtest\",\"id\":21},{\"nummer\":\"02401\",\"beschreibung\":\"H2-Atemtest\",\"id\":20},{\"nummer\":\"02400\",\"beschreibung\":\"13C-Harnstoff-Atemtest\",\"id\":17},{\"nummer\":\"02401\",\"beschreibung\":\"H2-Atemtest\",\"id\":15},{\"nummer\":\"02400\",\"beschreibung\":\"13C-Harnstoff-Atemtest\",\"id\":2}]}"]}

当我输入我的控制台data['note']时,它会正确地返回note - 节点,但不知怎的,我无法访问上面的级别:

 data['note']['quartal']
 => undefined

我错了什么?小提琴:http://jsfiddle.net/S74Td/谢谢

3 个答案:

答案 0 :(得分:1)

您必须解码注意

 var test = JSON.parse(data.note);
 console.log(test.quartal);

答案 1 :(得分:1)

note的值不是对象,因此它没有quartal属性。

值为字符串。该字符串似乎是JSON文本的表示,因此您可以将其解析为具有JSON.parse的对象,然后访问它。

var note = JSON.parse(data.note);
alert(note.quartal);

您可能最好更改原始数据,因此您首先会有一个对象而不是一串JSON文本。

答案 2 :(得分:1)

应该是:

var a = JSON.parse(data.note);
console.log("OP: "+a.quartal);

DEMO here.