0

データを別のファイル (他のすべてのファイルと同じパス) に保存したいと考えています。JSON ファイルのインポートに苦労しています。これは私が試したもので、うまくいきませんでした:

$.getJSON("rezepte.json", function(obj) {
var rezepte = obj.rezepte;
});

更新 - これが最終的に機能したものです。ご協力いただきありがとうございます。

var rezepte = $.getJSON("rezepte.json", function(obj) {
rezepte = obj.rezepte;
});

このデータをコードで直接使用すると、すべてがうまく機能します。

var rezepte = [
{ "name" : "Eierkopf" , "zutaten" : ["eier", "butter", "kekse"] , "menge" : ["3 Eier", "20g Butter", "5 Kekse"] , "portionen" : 1 , "zubereitung" : ["1. alles", "2. schön", "3. mischen."] },
{ "name" : "Käseschnitte" , "zutaten" : ["käse", "brot"] , "menge" : ["500g Käse", "2 Scheiben geschnittenes Brot"] , "portionen" : 2 , "zubereitung" : ["1. Brotunterseite mit Butter bestreichen (altes Brot verwenden)", "2. Brotoberseite mit Weisswein beträufeln", "3. mit Käse bedecken und würzen", "4. 20min. in vorgeheizten Ofen bei 180 Grad" , "5. nomal öpis"] },
{ "name" : "Gemüse-Auflauf" , "zutaten" : ["lauch"] , "menge" : ["1 Stengel Lauch", "5 Zitronen"], "portionen" : 4 , "zubereitung" : ["1. schneiden", "2. Kochen", "3. essen", "4. xxx", "5. yyy", "6. en guete"] } ];

これを次のように保存しましたrezepte.json

{
"rezepte" :

[
{ "name" : "Eierkopf" , "zutaten" : ["eier", "butter", "kekse"] , "menge" : ["3 Eier", "20g Butter", "5 Kekse"] , "portionen" : 1 , "zubereitung" : ["1. alles", "2. schön", "3. mischen."] },
{ "name" : "Käseschnitte" , "zutaten" : ["käse", "brot"] , "menge" : ["500g Käse", "2 Scheiben geschnittenes Brot"] , "portionen" : 2 , "zubereitung" : ["1. Brotunterseite mit Butter bestreichen (altes Brot verwenden)", "2. Brotoberseite mit Weisswein beträufeln", "3. mit Käse bedecken und würzen", "4. 20min. in vorgeheizten Ofen bei 180 Grad" , "5. nomal öpis"] },
{ "name" : "Gemüse-Auflauf" , "zutaten" : ["lauch"] , "menge" : ["1 Stengel Lauch", "5 Zitronen"], "portionen" : 4 , "zubereitung" : ["1. schneiden", "2. Kochen", "3. essen", "4. xxx", "5. yyy", "6. en guete"] }
]

}

残念ながら、まだ機能しません。$.getJSON の結果は 3 つの空のオブジェクトのみの配列になります。Thx、アンディ

4

2 に答える 2

1

rezepte返されたオブジェクトのプロパティにアクセスする必要があるようです。

$.getJSON("rezepte.json", function(obj) {
    var rezepte = obj.rezepte;
});

その引数に という名前を付けるのは賢明ではありません。そうではないのでjson、(一般的に) JavaScript オブジェクトです。

于 2012-11-18T11:24:16.230 に答える
0

非ASCIIシンボルのために間違ってエンコードしました。次のrezepte.jsonようになります。

[{"name":"Eierkopf","zutaten":["eier","butter","kekse"],"menge":["3 Eier","20g Butter","5 Kekse"],"zubereitung":["1. alles","2. sch\u00f6n","3. mischen."]},{"name":"K\u00e4seschnitte","zutaten":["k\u00e4se","brot"],"menge":["500g K\u00e4se","2 Scheiben Brot"],"zubereitung":["1. Brotunterseite mit Butter bestreichen (altes Brot verwenden)","2. Brotoberseite mit Weisswein betr\u00e4ufeln","3. mit K\u00e4se bedecken und w\u00fcrzen","4. 20min. in vorgeheizten Ofen bei 180 Grad"]},{"name":"Gem\u00fcse-Auflauf","zutaten":["lauch"],"menge":["1 Stengel Lauch","5 Zitronen"],"zubereitung":["1. schneiden","2. Kochen","3. essen","4. xxx","5. yyy","6. en guete"]}]

フォーマット:

[
  {
    "name": "Eierkopf",
    "zutaten": [
      "eier",
      "butter",
      "kekse"
    ],
    "menge": [
      "3 Eier",
      "20g Butter",
      "5 Kekse"
    ],
    "zubereitung": [
      "1. alles",
      "2. sch\u00f6n",
      "3. mischen."
    ]
  },
  {
    "name": "K\u00e4seschnitte",
    "zutaten": [
      "k\u00e4se",
      "brot"
    ],
    "menge": [
      "500g K\u00e4se",
      "2 Scheiben Brot"
    ],
    "zubereitung": [
      "1. Brotunterseite mit Butter bestreichen (altes Brot verwenden)",
      "2. Brotoberseite mit Weisswein betr\u00e4ufeln",
      "3. mit K\u00e4se bedecken und w\u00fcrzen",
      "4. 20min. in vorgeheizten Ofen bei 180 Grad"
    ]
  },
  {
    "name": "Gem\u00fcse-Auflauf",
    "zutaten": [
      "lauch"
    ],
    "menge": [
      "1 Stengel Lauch",
      "5 Zitronen"
    ],
    "zubereitung": [
      "1. schneiden",
      "2. Kochen",
      "3. essen",
      "4. xxx",
      "5. yyy",
      "6. en guete"
    ]
  }
]
于 2012-11-18T11:36:07.687 に答える