まずは JSON を使ってみてください。JSON オブジェクトを返す ajax/php 関数があります。js 側に戻ると、オブジェクトを確認して div に出力できます。それはうまく見えます。コンソールに印刷できますが、それでも見栄えがします。しかし、それを反復して個々の値を公開しようとすると、コンソールに「未定義」と表示されます。何が欠けているのかわかりません。明らかなことなら申し訳ありませんが、私にはわかりません。ありがとう!
var jsonObj = JSON.parse(xmlhttp.responseText);
console.log(jsonObj); //<--looks perfect
console.log(jsonObj.length);
document.getElementById("rightsidebox").innerHTML=response; //<--looks good
for (var group in jsonObj) {
//each of these generates 'undefined' WHY???
//I get 4 'undefined' outputs for each group, so I know that my loop is iterating correctly
console.log(group.id);
console.log(group.day);
console.log(group.time);
console.log(group.name);
}
編集: これは、私の ajax 呼び出しによって返される JSON オブジェクトの 1 つの例です。この例では、配列内に 1 つのオブジェクトしかありません。もちろん、通常は複数のオブジェクトがあります。
[{"id":"7","day":"木曜日","time":"7:00 am","name":"Sub 10:00"}]
編集 2: この配列を考えると、JSON のポイントは何かを尋ねなければなりません。PHP で JSON 形式にエンコードしなくても、この配列を返すことができます。では、返されるのが JavaScript 配列だけである場合、何を達成したのでしょうか? PHP で JSON エンコーディングをスキップしてから、配列を反復処理してみませんか? 明らかにこれには理由があるので、明らかに何かが欠けています。私が達成しようとしていることを行うためのより良い方法はありますか? ありがとう!