前提・実現したいこと
jQueryで国語の問題を作ってホームページに載せています。自分で1から作るのは難しくて、ネットのサンプル問題を使わせてもらっています。しかし、問題が増えて、外部ファイルにして読み込もうとして試行錯誤していますが、うまくいきません。
ソースコードは問題を読み込む部分です。
問題の部分をquiz.jsonというファイルにして、スクリプトのaryQuizに格納したいと思います。
getなどを使っていろいろやっていますが、基礎的な知識の不足があり難しいです。どうすれば、うまくくのか教えていただければと思います。よろしくお願いします。
発生している問題・エラーメッセージ
エラーメッセージ
該当のソースコード
jquery
1 2<script src='https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js?ver=1.12.4'></script> 3<script> 4$(function(){ 5 var quizArea = $('.quiz_area'); //クイズを管理するDOMを指定 6 var quiz_html = quizArea.html(); //もう一度 を押した時に元に戻すため初期HTMLを変数で保管 7 var quiz_cnt = 0; //現在の問題数を管理 8 var quiz_fin_cnt = 5; //何問で終了か設定(クイズ数以下であること) 9 var quiz_success_cnt = 0; //問題の正解数 10 11 //クイズの配列を設定 12 var aryQuiz = []; 13 aryQuiz.push( 14 15 { 16 question : '「飛べ かもめ」の作者はだれですか?', 17 answer : ['杉みき子', '中原中也', '芥川龍之介', '高階杞一'] 18 } 19 ,{ 20 question : '少年が列車に乗ったときの季節・天気・時間帯は?', 21 answer : ['冬・曇り・昼過ぎ', '冬・曇り・夕方', '冬・晴れ・昼過ぎ', '冬・晴れ・夕方'] 22 } 23 ,{ 24 question : '少年が家出をした理由は?', 25 answer : ['成績が下がったから', 'ゲームをしすぎて怒られたから', 'おこずかいがもらえないから', '家の手伝いをせずに怒られたから'] 26 } 27 ,{ 28 question : '列車の窓ガラスに張り付いているように見えた紙切れの正体は?', 29 answer : ['かもめ', 'プリント', 'はと', '虫'] 30 } 31 ,{ 32 question : '最後の場面で、少年の心に芽生えたものとして当てはまるものは?', 33 { 34 question : '「飛べ かもめ」の作者はだれですか?', 35 answer : ['杉みき子', '中原中也', '芥川龍之介', '高階杞一'] 36 } 37 answer : ['前向きな思い', '諦め', '競争心', '自由を求める心'] 38 } 39 ); 40 41 quizReset(); 42 43 44//以降省略します。 45 46quiz.jsonファイルは上記スクリプトの中の 47 { 48 question : '「飛べ かもめ」の作者はだれですか?', 49 answer : ['杉みき子', '中原中也', '芥川龍之介', '高階杞一'] 50 } 51 52の内容です。 53以下のようなことをしていますが、基礎的な知識不足のため難しいです。 54 55 56<!DOCTYPE html> 57<html> 58<head> 59<meta http-equiv="content-type" charset="UTF-8"> 60<meta name="viewport" content="width=device-width,initial-scale=1.0"> 61<title>国語クイズ</title> 62</head> 63 64<script src='https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js?ver=1.12.4'></script> 65 66<body> 67 68<script> 69 70$(function(){ 71 var quizArea = $('.quiz_area'); //クイズを管理するDOMを指定 72 var quiz_html = quizArea.html(); //もう一度 を押した時に元に戻すため初期HTMLを変数で保管 73 var quiz_cnt = 0; //現在の問題数を管理 74 var quiz_fin_cnt = 5; //何問で終了か設定(クイズ数以下であること) 75 var quiz_success_cnt = 0; //問題の正解数 76 77 //クイズの配列を設定 78 var aryQuiz = []; 79 80 $.getJSON('quiz.json' , (data) => { 81 aryQuiz.push(data); 82 console.log(aryQuiz); 83 84 }); 85 86 87</body> 88</html> 89
試したこと
上記のようなことをしてみましたが、基礎的な知識不足のためうまくいきません。
補足情報(FW/ツールのバージョンなど)
データは同じサーバーの同じ場所に置いています。