質問するログイン新規登録

質問編集履歴

2

誤字

2019/01/12 03:05

投稿

ShotaYamamoto
ShotaYamamoto

スコア12

title CHANGED
File without changes
body CHANGED
@@ -70,7 +70,7 @@
70
70
 
71
71
  ### 試したこと
72
72
 
73
- JS BINというサイトで以下のように試したところ動きました。
73
+ JS BINというサイトで以下のように試したところではいたのでそのまま、実際の環境においてみましたが動きませんでした。
74
74
  ```HTML
75
75
  <!DOCTYPE html>
76
76
  <html>

1

ソースコードが抜けていたので追加しました

2019/01/12 03:05

投稿

ShotaYamamoto
ShotaYamamoto

スコア12

title CHANGED
File without changes
body CHANGED
@@ -5,20 +5,117 @@
5
5
 
6
6
 
7
7
  ### 発生している問題・エラーメッセージ
8
- 要素数が不確定なJSONファイルを扱うためにfor文を利用してデータの取り出しを行いのですが、表示できませんでした
8
+ JSONの取得、JSONのパース、HTMLへの動的組み込みのそれぞれの処理単体では動のですが、一つにまとめた際に上手く動きません。
9
9
  chromeのJavascriptコンソールでもエラーが表示されないため、原因がつかめないでいます。
10
10
 
11
11
 
12
12
  ### 該当のソースコード
13
13
 
14
- ```ここに言語名を入力
15
- ソースコード
14
+ ```Javascript
15
+ function cal(){
16
+
17
+ var httpObj = new XMLHttpRequest();
18
+ httpObj.open("get", "http://0.0.0.0:8000/cgi-bin/json/dash_dash.json", true);
19
+ httpObj.onload = function (){
20
+ var objobj = '';
21
+ var myDash = JSON.parse(this.responseText);
22
+ for (var foo in myDash){
23
+ for (var num in myDash[foo]){
24
+ objobj += '<span class="event_foo" style="color:' + myDash[foo][num]["color"] + ';">' + myDash[foo] + '</span><span class="event_time">' + myDash[foo][num]["begin_time"] + '</span><span class="event_name">' + myDash[foo][num]["event"] + '</span>'
25
+ ;
26
+ }}
27
+ document.getElementById("calendar") += objobj;
28
+ return;
29
+ }
30
+ }
16
31
  ```
32
+ ```Json
33
+ {
34
+   "user_1": {
35
+ "7": {
36
+ "begin_date": "2019/01/11",
37
+ "begin_time": "22:02",
38
+ "event": "テスト",
39
+ "color": "#ffff00"
40
+ },
41
+ "8": {
42
+ "begin_date": "2019/01/11",
43
+ "begin_time": "21:59",
44
+ "event": "テスト",
45
+ "color": "#ffff00"
46
+ }
47
+ },
48
+ "user_2": {
49
+ "10": {
50
+ "begin_date": "2019/01/11",
51
+ "begin_time": "16:06",
52
+ "event": "テスト",
53
+ "color": "##ff8eff"
54
+ }
55
+ }
56
+ }
57
+ ```
58
+ ```HTML
59
+ <head>
60
+ <meta charset="utf-8"/>
61
+ <link rel="stylesheet" type="text/css" href="../css/Main_2.css" />
62
+ <link href="https://fonts.googleapis.com/css?family=Noto+Sans+JP:100,300,400,500,700,900&amp;subset=japanese" rel="stylesheet">
63
+ <script src="../css/calendar.js"></script>
64
+ </head>
65
+ <body>
66
+ <div id="calendar"></div>
67
+ </body>
68
+ ```
17
69
 
70
+
18
71
  ### 試したこと
19
72
 
73
+ JS BINというサイトで以下のように試したところ動きました。
74
+ ```HTML
75
+ <!DOCTYPE html>
76
+ <html>
77
+ <head>
78
+ <meta charset="utf-8">
79
+ <meta name="viewport" content="width=device-width">
80
+ <title>JS Bin</title>
81
+ </head>
82
+ <body>
83
+
84
+ <div id="cal"></div>
85
+ </body>
86
+ </html>
87
+ ```
88
+ ```javascript
89
+ var jsondata = {
90
+ "user_1": {
91
+ "7": {
92
+ "begin_date": "2019/01/11",
93
+ "begin_time": "22:02",
94
+ "event": "テスト",
95
+ "color": "#ffff00"
96
+ },
97
+ "8": {
98
+ "begin_date": "2019/01/11",
99
+ "begin_time": "21:59",
100
+ "event": "テスト",
101
+ "color": "#ffff00"
102
+ }
103
+ },
104
+ "user_2": {
105
+ "10": {
106
+ "begin_date": "2019/01/11",
107
+ "begin_time": "16:06",
108
+ "event": "テスト",
109
+ "color": "##ff8eff"
110
+ }
111
+ }
112
+ }
113
+ var objobj = document.getElementById("cal");
114
+ for (var foo in jsondata){
115
+ for (var num in jsondata[foo]){
20
- ここに問題に対して試したことを記載してください。
116
+     //テストなのでeventのみ
21
-
117
+ objobj.innerHTML += "<span>"+jsondata[foo][num]["event"]+"</span><br>";}}
118
+ ```
22
119
  ### 補足情報(FW/ツールのバージョンなど)
23
120
 
24
- JSONの要素数が決まっている場合は以下のようにして取得しており、上手ています
121
+ ここより詳細な情報を記載してください。