実現したいことと発生している問題
3日ほど前に、JavaScriptを始めたばかりのものです。
現在、fullcalendarのカスタマイズを行っているのですが、
イベントの追加を大量に行いたいため、ローカルにJSONファイルでイベントデータを作成し、カレンダープログラムに読み込もうとしています。
そこで、events.jsonというファイルを作成したのですが、イベントとして読み込むことができません。
該当のソースコード
HTML
1<!DOCTYPE html> 2<html> 3<head> 4<meta charset='utf-8' /> 5<link href='../packages/core/main.css' rel='stylesheet' /> 6<link href='../packages/daygrid/main.css' rel='stylesheet' /> 7<script src='../packages/core/main.js'></script> 8<script src='../packages/interaction/main.js'></script> 9<script src='../packages/daygrid/main.js'></script> 10<script src='../packages/core/locales/ja.js'></script> 11<script src="events.json"></script> 12 13<script> 14 15//function 16var dDate 17function getNowYMD(){ 18 var dt = new Date(); 19 var y = dt.getFullYear(); 20 var m = ("00" + (dt.getMonth()+1)).slice(-2); 21 var d = ("00" + dt.getDate()).slice(-2); 22 dDate = y + "-" + m + "-" + d; 23} 24 25 document.addEventListener('DOMContentLoaded', function() { 26 var calendarEl = document.getElementById('calendar'); 27 var calendar = new FullCalendar.Calendar(calendarEl, { 28 locale: 'ja', 29 plugins: [ 'interaction', 'dayGrid' ], 30 31 customButtons: { 32 prev10: { 33 text: '<<', 34 click: function() { 35 alert('10年前を表示します(仮)'); 36 } 37 }, 38 next10 : { 39 text: '>>', 40 click: function() { 41 alert('10年後を表示します(仮)'); 42 } 43 }, 44 shukujitu: { 45 text: '祝日', 46 click: function() { 47 alert('祝日を表示します(仮)'); 48 } 49 }, 50 rokuyo: { 51 text: '六曜', 52 click: function() { 53 alert('六曜を表示します(仮)'); 54 } 55 } 56 }, 57 58 59 header: { 60 left: 'prev10,prevYear,prev,next,nextYear,next10 today', 61 center: 'title', 62 right: 'dayGridMonth shukujitu rokuyo', 63 }, 64 defaultDate: dDate, 65 navLinks: true, // can click day/week names to navigate views 66 businessHours: true, // display business hours 67 editable: true, 68 events: 'events.json', 69 }); 70 71 calendar.render(); 72 }); 73 74</script> 75<style> 76 77 body { 78 margin: 40px 10px; 79 padding: 0; 80 font-family: Arial, Helvetica Neue, Helvetica, sans-serif; 81 font-size: 14px; 82 } 83 84 #calendar { 85 max-width: 900px; 86 margin: 0 auto; 87 } 88 89</style> 90</head> 91<body> 92 <div id='calendar'></div> 93</body> 94</html> 95
JSON
1[ { 2 "title": "unchi", 3 "start": "2019-11-03", 4 "constraint": "businessHours" 5 }, 6 { 7 "title": "Meeting", 8 "start": "2019-11-13", 9 "constraint": "availableForMeeting", 10 "color": "#257e4a" 11 }, 12 { 13 "title": "Conference", 14 "start": "2019-11-18", 15 "end": "2019-11-20" 16 }, 17 { 18 "title": "Party", 19 "start": "2019-11-29" 20 }, 21 22 23 { 24 "groupId": "availableForMeeting", 25 "start": "2019-11-11T10:00:00", 26 "end": "2019-11-11T16:00:00", 27 "rendering": "background" 28 }, 29 { 30 "groupId": "availableForMeeting", 31 "start": "2019-11-13", 32 33 "rendering": "background" 34 }, 35 36 37 { 38 "start": "2019-11-24", 39 "end": "2019-11-28", 40 "overlap": false, 41 "rendering": "background", 42 "color": "#ff9f89" 43 }, 44 { 45 "start": "2019-11-06", 46 "end": "2019-11-11", 47 "overlap": false, 48 "rendering": "background", 49 "color": "#ff9f89" 50 } 51 ]
試したこと
JSONファイルはネット上で正しくかけていると判定しましたため、HTMLおよびJavaScript内で正しく読み込めていないと考えています。
補足情報(参考にしているサイト)
FullCalendarバージョン4の設置サンプル。
Fullcalendar - events (as a json feed)
こちらのFullcalendarの公式サイトにてイベントデータの読み込みを行う関数が提示されているのですが、その使い方がわかりません…。
Fullcalendar - eventDataTransform
初歩的な質問かもしれませんが、何卒よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー