質問編集履歴
2
ChromeではOKでしたがIE11でNGでした。
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,6 +1,12 @@
|
|
1
1
|
### 前提・実現したいこと
|
2
|
+
ご回答いただいた皆様には申し訳ございませんが、本件ReOpenさせてください。
|
3
|
+
ご回答いただいた、mts10806様、yambejp様 有難うございました。
|
4
|
+
本件、再度本文に記載させていただきます。
|
5
|
+
|
6
|
+
以下、「試したこと」の欄に継続して記載させていただきます。
|
7
|
+
|
2
8
|
HTMLとJavaScriptとを用いて
|
3
|
-
複数の任意の外部スクリプトに定義してある連想配列データ(WeeklyData.js)をHTML上で選択取込みし、その後、
|
9
|
+
”ローカル”にある複数の任意の外部スクリプトに定義してある連想配列データ(WeeklyData.js)をHTML上で選択取込みし、その後、
|
4
10
|
その取込んだデータを、別名で定義したグローバル変数として現ページ上で保持し、
|
5
11
|
様々な演算処理に利用したいと考えております。
|
6
12
|
|
@@ -84,6 +90,49 @@
|
|
84
90
|
```
|
85
91
|
|
86
92
|
### 試したこと
|
93
|
+
yambejp様からご回答いただいた以下の内容でChromeでは
|
94
|
+
起動オプション「--allow-file-access-from-file」を追加することで、
|
95
|
+
ローカルにあるScriptを読み込むことができたのですが、IE11で確認すると
|
96
|
+
読み込めない状況でした、
|
97
|
+
|
98
|
+
```Javascript
|
99
|
+
$(function(){
|
100
|
+
$.when(
|
101
|
+
$.getScript("../2018/Apr/Week1/WeeklyData.js",function(){foo1()}),
|
102
|
+
$.getScript("../2018/Apr/Week2/WeeklyData.js",function(){foo2()})
|
103
|
+
).done(function(){
|
104
|
+
console.log(W11data);
|
105
|
+
console.log(W21data);
|
106
|
+
});
|
107
|
+
});
|
108
|
+
```
|
109
|
+
そこで、調べてみたところ、jQueryの読み込みの後に、以下様にすれば
|
110
|
+
IE11でも読めるとありましたので、試してみましたが、
|
111
|
+
「WeeklyData.js」を開きますか?という表示が出力され、やはり
|
112
|
+
取込むことができませんでした。
|
113
|
+
|
114
|
+
```Javascript
|
115
|
+
<script src ="../jQuery/jquery-3.3.1.min.js"></script>
|
116
|
+
<script>
|
117
|
+
//$.ajaxSetup({cache: false});
|
118
|
+
$.ajaxSetup({
|
119
|
+
xhr: function() {
|
120
|
+
if("ActiveXObject" in window) {
|
121
|
+
return new ActiveXObject("Microsoft.XMLHTTP");
|
122
|
+
}
|
123
|
+
else {
|
124
|
+
return new XMLHttpRequest();
|
125
|
+
}
|
126
|
+
}
|
127
|
+
});
|
128
|
+
</script>
|
129
|
+
```
|
130
|
+
jQueryを使わない手段、もしくは使用してもIE11でローカルにある
|
131
|
+
外部スクリプトを取込める手段、ご教示いただければ幸いです。
|
132
|
+
以上、どうぞよろしくお願い致します。
|
133
|
+
|
134
|
+
|
135
|
+
|
87
136
|
1)Chromeブラウザにて、
|
88
137
|
$.getScript("../2018/Apr/Week1/WeeklyData.js",function(){foo1()});
|
89
138
|
でブレークをかけて、ステップ実行すると、取込める場合があるのですが、
|
1
コード部分を```で括りました
title
CHANGED
File without changes
|
body
CHANGED
@@ -14,6 +14,7 @@
|
|
14
14
|
### 該当のソースコード
|
15
15
|
先ず外部データであるWeeklyData.jsの中身ですが、以下の様に単純に連想配列データを記載したものです。
|
16
16
|
----------------------------
|
17
|
+
```Javascript
|
17
18
|
var data1 =[
|
18
19
|
{ Period : "Apr1-7",
|
19
20
|
DataID : "ID0001",
|
@@ -33,13 +34,13 @@
|
|
33
34
|
val4 : 15,
|
34
35
|
val5 : 30,
|
35
36
|
}
|
36
|
-
|
37
|
+
```
|
37
|
-
・・・・・・・・・
|
38
38
|
上記の様なデータが多数続きます。仮にここでは10個の配列データとします。
|
39
39
|
----------------------------
|
40
40
|
次に上記のデータを取込み、別名のグローバル変数として再定義する為に
|
41
41
|
以下のようにgetScriptを用いて、取込み完了後にfoo()という関数で
|
42
42
|
別のグローバル変数へ代入する方法を試みました
|
43
|
+
```HTML
|
43
44
|
<html>
|
44
45
|
<header>
|
45
46
|
<!-- JQuery DL -->
|
@@ -80,6 +81,7 @@
|
|
80
81
|
----
|
81
82
|
</body>
|
82
83
|
</html>
|
84
|
+
```
|
83
85
|
|
84
86
|
### 試したこと
|
85
87
|
1)Chromeブラウザにて、
|
@@ -90,11 +92,13 @@
|
|
90
92
|
ような動きになってしまいます。
|
91
93
|
また、
|
92
94
|
2)jQueryを用いずに
|
95
|
+
```Javascript
|
93
96
|
<script>
|
94
97
|
var script = document.createElement('script');
|
95
98
|
script.src = 'WeeklyData.js';
|
96
99
|
document.head[0].appendChild(script);
|
97
100
|
</script>
|
101
|
+
```
|
98
102
|
で外部データを読み込み、その後にfoo1()を実施するなども試みましたが
|
99
103
|
やはりダメでした。
|
100
104
|
|