// 表示非表示切替 var showChitenId = ""; function chitenShowHide(id) { if ($('#' + id).is(':visible')) { $('#chitenImage').html(''); $('#' + id).hide(); } else { if (showChitenId != "") { $('#' + showChitenId).hide(); } if (chitenName[id] == undefined) { $('#chitenImage').html('

整備中

'); } else if ( chitenImagesPath[id] != "" && chitenImagesPath[id] != '/js/files/image/undefined' ) { $('#chitenImage').html('

' + chitenName[id] + '

' + chitenName[id] + 'の写真'); } else { $('#chitenImage').html('

' + chitenName[id] + '

'); } // クリック時、読み込まれてなければ、非同期で読み込む。 if ($('#' + id + ' > li').length == 0) { getAllNendo(id.replace(/^nendo_/, "")); } showChitenId = id; $('#' + id).show(); } } var showNendoId = ""; function nendoShowHide(id) { if ($('#' + id).is(':visible')) { $('#' + id).hide(); } else { if (showNendoId != "") { $('#' + showNendoId).hide(); } showNendoId = id; $('#' + id).show(); } } // 地点あたりすべての年度データの読み込み function getAllNendo(code) { var thisY = new Date().getFullYear(); var bError = false; // 一旦削除 $('#nendo_' + code + ' > li').remove(); // 2003 年から、現在まで読み込む for (var i = thisY; i >= (thisY - 5); i--) { // $.get("/js/files/data/nenpo_" + i + "_" + code + ".txt", function(data){ $.ajax({ type: "GET", url: "/js/files/data/nenpo_" + i + "_" + code + ".txt", async: false, success: function(data){ // エンコードし元データの復元 /*** var str = decodeURI(data).replace(/%2f/g,'/').replace(/%3d/g,'=').replace(/\+/g,' ').replace(/%3a/g,':'); // JSON でパース可能な形に整形 str = str.replace(/\\/g, ''); str = str.replace(//g, ''); str = str.replace(/'/g, '"'); var dataArray = JSON.parse(str); ***/ eval('dataArray='+ decodeURI(data).replace(/%2f/g,'/').replace(/%3d/g,'=').replace(/\+/g,' ').replace(/%3a/g,':')); var bOutYear = false; for (var j = 0; j < dataArray.length; j++) { var nendo = dataArray[j][1]; // 年度 var path = dataArray[j][5]; // Path var name = dataArray[j][6]; // 説明 if (!bOutYear && nendo != "") { $('#nendo_' + code).append('
  • ' + nendo + ' 年\n\n
  • \n'); // 初期非表示 $('#nendo_' + code + '_' + nendo ).hide(); bOutYear = true; } if (bOutYear && name != "") { if (path) { $('#nendo_' + code + '_' + nendo ).append('
  • ' + name + '
  • \n'); } else { $('#nendo_' + code + '_' + nendo ).append('
  • ' + name + '
  • \n'); } } } } }); //}); } // for } var chitenName = new Array(); var chitenImagesPath = new Array(); // すべての地点データの読込 function getAllChiten() { var bError = false; // 地点が増えることも考慮し、すべてを読み込む。 for (var i = 1; !bError && i <= 29; i++) { /* 地点ID 20、地点ID 21 は、ファイルが存在しない(コードとファイル名が不整合を起こしているのでスキップ)2020.05.21 */ /* 地点ID 9、地点ID 15 は、非表示にする指示があったので対応@2022.11.30 */ if ( i != 9 && i != 15 && i != 20 && i != 21 ) { // 非同期 // $.get("/js/files/data/chiten_" + i + ".txt", function(data){ $.ajax({ type: "GET", url: "/js/files/data/chiten_" + i + ".txt", async: false, success: function(data){ //console.log(data); // エンコードし元データの復元 var str = decodeURI(data).replace(/%2f/g,'/').replace(/%3d/g,'=').replace(/\+/g,' ').replace(/%3a/g,':'); //console.log(str); /*** // JSON でパース可能な形に整形 str = str.replace(/\\/g, ''); str = str.replace(/^\[/, '').replace(/\]$/, ''); // str = str.replace(//g, ''); str = str.replace(/"/g, 'comma'); str = str.replace(/'/g, '"'); var dataArray = JSON.parse(str); ***/ eval('dataArray='+ decodeURI(data).replace(/%2f/g,'/').replace(/%3d/g,'=').replace(/\+/g,' ').replace(/%3a/g,':')); var code = dataArray[0][1]; var name = dataArray[0][2]; chitenName['nendo_' + code] = dataArray[0][2]; // console.log('image ------> ' + dataArray[0][4]); if ( dataArray[0][4] != '' && dataArray[0][4] !== 'undefined' ) { chitenImagesPath['nendo_' + code] = "/js/files/image/" + dataArray[0][4]; } else { chitenImagesPath['nendo_' + code] = "/image/site/no-image.jpg"; // chitenImagesPath['nendo_' + code] = ""; } // 地点リストを生成 if (name.indexOf("工業用水") != -1) { $('#chiten').append('
  • ' + name + '\n\n
  • \n'); } else if (name.indexOf("供給点") != -1) { $('#chiten').append('
  • ' + name + '\n\n
  • \n'); } else if (name.indexOf("伊是名浄水場出口") != -1) { $('#chiten').append('
  • ' + name + '\n\n
  • \n'); } else if (name.indexOf("渡嘉敷浄水場出口") != -1) { $('#chiten').append('
  • ' + name + '\n\n
  • \n'); } else if (name.indexOf("座間味海水淡水化施設出口") != -1) { $('#chiten').append('
  • ' + name + '\n\n
  • \n'); } else { $('#chiten').append('
  • ' + name + '\n\n
  • \n'); } // 初期非表示 $('#nendo_' + code).hide(); // 地点ごとの年度データの読込 // 非同期だとリストが並ばない。同期だと遅すぎるので、クリック時に読み込む。 // getAllNendo(code); }, error: function(XMLHttpRequest, textStatus, errorThrown){ // 通常はここでtextStatusやerrorThrownの値を見て処理を切り分けるか、 // 単純に通信に失敗した際の処理を記述します。 this; // thisは他のコールバック関数同様にAJAX通信時のオプションを示します。 // bError = true; } }); /*** // 非同期 }).fail(function() { bError = true; }); ***/ } // endo of if } // for } $(function(){ getAllChiten(); });