質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

1回答

850閲覧

突如現れたエラー(謎)

fattc

総合スコア1

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2021/06/26 12:39

前提・実現したいこと

htmlにある表から時刻を取得して現在時刻と比較し、その行から5つまでをinnerHTMLを使って取得し、htmlにあるdivにinnerHTMLで内容書き換えで表示させています。

発生している問題・エラーメッセージ

エラーメッセージ ReferenceError: Can't find variable: weekdayKe ### 該当のソースコード time1 = weekdayKe.rows[row].cells[0].innerHTML;

JavaScript

1window.onload = 2 function serch(){ 3 4 now = new Date(); 5 6 nhour= now.getHours(); 7 8 if(now.getMinutes() < 10){ 9 nmin = "0" + now.getMinutes(); 10 }else{ 11 nmin= now.getMinutes();} 12 13 var nyou = now.getDay(); 14 15 16 var k = document.getElementById('yobi').value; 17 var time1; 18 var time; 19 20 if(k==1){ 21 22 var disyo = '<img src="weekday.jpg" alt="平日" height="100px">'; 23 window.alert(k); 24 25 26 if( nhour ==0 && nmin>=2 ){ 27 var row = 0 28 }else if(nhour < 5){ 29 var row = 0; 30 }else{ 31 for(var row=0; row<=1000; row++){ 32 window.alert(row); 33 var shour = nhour + 1; 34 time1 = weekdayKe.rows[row].cells[0].innerHTML; 35 time = time1.split(':'); 36 37 if( nhour == time[0]){ 38 if( nmin <= time[1]){ 39 40 break;} 41 }else if(shour == time[0]){ 42 43 break; 44 }}}; 45 46 47 var Uzusenpatsu =(weekdayKe.rows[row].cells[0].innerHTML); 48 var Uzujihatsu =(weekdayKe.rows[row + 1].cells[0].innerHTML); 49 var Uzujijihatsu =(weekdayKe.rows[row + 2].cells[0].innerHTML); 50 var Uzuyonhatsu =(weekdayKe.rows[row + 3].cells[0].innerHTML); 51 var Uzugohatsu =(weekdayKe.rows[row + 4].cells[0].innerHTML); 52 53 var Uzusenpatsufor =(weekdayKe.rows[row].cells[1].innerHTML); 54 var Uzujihatsufor =(weekdayKe.rows[row + 1].cells[1].innerHTML); 55 var Uzujijihatsufor=(weekdayKe.rows[row + 2].cells[1].innerHTML); 56 var Uzuyonhatsufor=(weekdayKe.rows[row + 3].cells[1].innerHTML); 57 var Uzugohatsufor=(weekdayKe.rows[row + 4].cells[1].innerHTML); 58 59 60 if( nhour >=23 && nmin>=56 ){ 61 var row = 162; 62 }else if(nhour < 5){ 63 var row = 0; 64 }else{ 65 var shour= nhour + 1; 66 for(var row=0; row<=1000; row++){ 67 time1 = weekdayKa.rows[row].cells[0].innerHTML; 68 time = time1.split(':'); 69 if( nhour == time[0]){ 70 if( nmin <= time[1]){ 71 break;} 72 }else if(shour == time[0]){ 73 74 break; 75 }}}; 76 77 var Tasenpatsu =(weekdayKa.rows[row].cells[0].innerHTML); 78 var Tajihatsu =(weekdayKa.rows[row + 1].cells[0].innerHTML); 79 var Tajijihatsu =(weekdayKa.rows[row + 2].cells[0].innerHTML); 80 var Tayonhatsu =(weekdayKa.rows[row + 3].cells[0].innerHTML); 81 var Tagohatsu =(weekdayKa.rows[row + 4].cells[0].innerHTML); 82 83 var Tasenpatsufor =(weekdayKa.rows[row].cells[1].innerHTML); 84 var Tajihatsufor =(weekdayKa.rows[row + 1].cells[1].innerHTML); 85 var Tajijihatsufor=(weekdayKa.rows[row + 2].cells[1].innerHTML); 86 var Tayonhatsufor=(weekdayKa.rows[row + 3].cells[1].innerHTML); 87 var Tagohatsufor=(weekdayKa.rows[row + 4].cells[1].innerHTML); 88 89 90 91 if( nhour ==0 && nmin>=2 ){ 92 var row = 0 93 }else if(nhour < 5){ 94 var row = 0; 95 }else{ 96 97 98 for(var row=0; row<=1000; row++){ 99 time1 = weekdayR.rows[row].cells[0].innerHTML; 100 time = time1.split(':'); 101 if( nhour == time[0]){ 102 if( nmin <= time[1]){ 103 break;} 104 }else if(nhour + 1 == time[0]){ 105 106 break; 107 }}}; 108 109 var Rsenpatsu =(weekdayR.rows[row].cells[0].innerHTML); 110 var Rjihatsu =(weekdayR.rows[row + 1].cells[0].innerHTML); 111 var Rjijihatsu =(weekdayR.rows[row + 2].cells[0].innerHTML); 112 var Ryonhatsu =(weekdayR.rows[row + 3].cells[0].innerHTML); 113 var Rgohatsu =(weekdayR.rows[row + 4].cells[0].innerHTML); 114 115 var Rsenpatsufor =(weekdayR.rows[row].cells[1].innerHTML); 116 var Rjihatsufor =(weekdayR.rows[row + 1].cells[1].innerHTML); 117 var Rjijihatsufor=(weekdayR.rows[row + 2].cells[1].innerHTML); 118 var Ryonhatsufor=(weekdayR.rows[row + 3].cells[1].innerHTML); 119 var Rgohatsufor=(weekdayR.rows[row + 4].cells[1].innerHTML); 120 121 122 if( nhour ==0 && nmin>=5 ){ 123 var row = 0 124 }else if(nhour < 5){ 125 var row = 0; 126 }else{ 127 128 for(var row=0; row<=1000; row++){ 129 time1 = weekdayTK.rows[row].cells[0].innerHTML; 130 time = time1.split(':'); 131 if( nhour == time[0]){ 132 if( nmin <= time[1]){ 133 break;} 134 }else if(nhour + 1 == time[0]){ 135 136 break; 137 }}}; 138 139 var TKsenpatsu =(weekdayTK.rows[row].cells[0].innerHTML); 140 var TKjihatsu =(weekdayTK.rows[row + 1].cells[0].innerHTML); 141 var TKjijihatsu =(weekdayTK.rows[row + 2].cells[0].innerHTML); 142 var TKyonhatsu =(weekdayTK.rows[row + 3].cells[0].innerHTML); 143 var TKgohatsu =(weekdayTK.rows[row + 4].cells[0].innerHTML); 144 145 var TKsenpatsufor =(weekdayTK.rows[row].cells[1].innerHTML); 146 var TKjihatsufor =(weekdayTK.rows[row + 1].cells[1].innerHTML); 147 var TKjijihatsufor=(weekdayTK.rows[row + 2].cells[1].innerHTML); 148 var TKyonhatsufor=(weekdayTK.rows[row + 3].cells[1].innerHTML); 149 var TKgohatsufor=(weekdayTK.rows[row + 4].cells[1].innerHTML); 150 151 152 }else{ 153 var disyo = '<img src="holiday.jpg" alt="土休日" height="100px">'; 154 155 156 if( nhour ==0 && nmin>=2 ){ 157 var row = 0; 158 }else if(nhour < 5){ 159 var row = 0; 160 }else{ 161 for(var row=0; row<=1000; row++){ 162 163 var shour = nhour + 1; 164 var time1 = holidayKe.rows[row].cells[0].innerHTML; 165 var time = time1.split(':'); 166 167 if( nhour == time[0]){ 168 if( nmin <= time[1]){ 169 170 break;} 171 }else if(shour == time[0]){ 172 173 break; 174 }}}; 175 window.alert(row); 176 177 var Uzusenpatsu =(holidayKe.rows[row].cells[0].innerHTML); 178 var Uzujihatsu =(holidayKe.rows[row + 1].cells[0].innerHTML); 179 var Uzujijihatsu =(holidayKe.rows[row + 2].cells[0].innerHTML); 180 var Uzuyonhatsu =(holidayKe.rows[row + 3].cells[0].innerHTML); 181 var Uzugohatsu =(holidayKe.rows[row + 4].cells[0].innerHTML); 182 183 var Uzusenpatsufor =(holidayKe.rows[row].cells[1].innerHTML); 184 var Uzujihatsufor =(holidayKe.rows[row + 1].cells[1].innerHTML); 185 var Uzujijihatsufor=(holidayKe.rows[row + 2].cells[1].innerHTML); 186 var Uzuyonhatsufor=(holidayKe.rows[row + 3].cells[1].innerHTML); 187 var Uzugohatsufor=(holidayKe.rows[row + 4].cells[1].innerHTML); 188 189 190 if( nhour >=23 && nmin>=56 ){ 191 var row = 162; 192 }else if(nhour < 5){ 193 var row = 0; 194 }else{ 195 var shour= nhour + 1; 196 for(var row=0; row<=1000; row++){ 197 time1 = holidayKa.rows[row].cells[0].innerHTML; 198 time = time1.split(':'); 199 if( nhour == time[0]){ 200 if( nmin <= time[1]){ 201 break;} 202 }else if(shour == time[0]){ 203 204 break; 205 }}}; 206 207 var Tasenpatsu =(holidayKa.rows[row].cells[0].innerHTML); 208 var Tajihatsu =(holidayKa.rows[row + 1].cells[0].innerHTML); 209 var Tajijihatsu =(holidayKa.rows[row + 2].cells[0].innerHTML); 210 var Tayonhatsu =(holidayKa.rows[row + 3].cells[0].innerHTML); 211 var Tagohatsu =(holidayKa.rows[row + 4].cells[0].innerHTML); 212 213 var Tasenpatsufor =(holidayKa.rows[row].cells[1].innerHTML); 214 var Tajihatsufor =(holidayKa.rows[row + 1].cells[1].innerHTML); 215 var Tajijihatsufor=(holidayKa.rows[row + 2].cells[1].innerHTML); 216 var Tayonhatsufor=(holidayKa.rows[row + 3].cells[1].innerHTML); 217 var Tagohatsufor=(holidayKa.rows[row + 4].cells[1].innerHTML); 218 219 220 221 if( nhour ==0 && nmin>=2 ){ 222 var row = 0 223 }else if(nhour < 5){ 224 var row = 0; 225 }else{ 226 227 228 for(var row=0; row<=1000; row++){ 229 time1 = holidayR.rows[row].cells[0].innerHTML; 230 time = time1.split(':'); 231 if( nhour == time[0]){ 232 if( nmin <= time[1]){ 233 break;} 234 }else if(nhour + 1 == time[0]){ 235 236 break; 237 }}}; 238 239 var Rsenpatsu =(holidayR.rows[row].cells[0].innerHTML); 240 var Rjihatsu =(holidayR.rows[row + 1].cells[0].innerHTML); 241 var Rjijihatsu =(holidayR.rows[row + 2].cells[0].innerHTML); 242 var Ryonhatsu =(holidayR.rows[row + 3].cells[0].innerHTML); 243 var Rgohatsu =(holidayR.rows[row + 4].cells[0].innerHTML); 244 245 var Rsenpatsufor =(holidayR.rows[row].cells[1].innerHTML); 246 var Rjihatsufor =(holidayR.rows[row + 1].cells[1].innerHTML); 247 var Rjijihatsufor=(holidayR.rows[row + 2].cells[1].innerHTML); 248 var Ryonhatsufor=(holidayR.rows[row + 3].cells[1].innerHTML); 249 var Rgohatsufor=(holidayR.rows[row + 4].cells[1].innerHTML); 250 251 252 if( nhour ==0 && nmin>=24 ){ 253 var row = 0 254 }else if(nhour < 5){ 255 var row = 0; 256 }else{ 257 258 for(var row=0; row<=1000; row++){ 259 time1 = holidayTK.rows[row].cells[0].innerHTML; 260 time = time1.split(':'); 261 if( nhour == time[0]){ 262 if( nmin <= time[1]){ 263 break;} 264 }else if(nhour + 1 == time[0]){ 265 266 break; 267 }}}; 268 269 var TKsenpatsu =(holidayTK.rows[row].cells[0].innerHTML); 270 var TKjihatsu =(holidayTK.rows[row + 1].cells[0].innerHTML); 271 var TKjijihatsu =(holidayTK.rows[row + 2].cells[0].innerHTML); 272 var TKyonhatsu =(holidayTK.rows[row + 3].cells[0].innerHTML); 273 var TKgohatsu =(holidayTK.rows[row + 4].cells[0].innerHTML); 274 275 var TKsenpatsufor =(holidayTK.rows[row].cells[1].innerHTML); 276 var TKjihatsufor =(holidayTK.rows[row + 1].cells[1].innerHTML); 277 var TKjijihatsufor=(holidayTK.rows[row + 2].cells[1].innerHTML); 278 var TKyonhatsufor=(holidayTK.rows[row + 3].cells[1].innerHTML); 279 var TKgohatsufor=(holidayTK.rows[row + 4].cells[1].innerHTML); 280}; 281 282 result.innerHTML= (省略しています。)};

html

1<body> 2 3 4<select id="yobi" onclick="serch()"> 5 <option value="1">平日Weekday</option> 6 <option value="2">土休日Saturday, Sunday & Holiday</option> 7<div id="result"><br> 8 9</div> 10 11 12 13 14 15 16 17 18 19 20<h4>利用にあたり<br> 21 22 23<table id="weekdayKe">

試したこと

id名など確認したが変わらない

補足情報(FW/ツールのバージョンなど)

表は
時刻|行き先 となっています
例)5:30|〜行き
個人情報保護のため一部省略が起こっています。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

itagagaki

2021/06/26 13:09

たぶん私が以前回答させていただいた方だと思いますが、たぶん、そのときコードのインデントをきちんと整えるよう助言を差し上げたと思いますが、直されていないのですね。 提示されているスクリプトのコードは { } の対が正しくないようです。 まずはそれを直してください。 HTMLも<h4>が閉じていなかったりしていますね。
m.ts10806

2021/06/26 23:46

プログラムは書いた通りにしか動かないので、「謎」と言う現象は基本ないです。起こるべくして起きてます。デバッグ覚えた方が良いです。 コード眺めても実装者の思い込みがあるので見つけるのは困難です。
fattc

2021/06/27 09:29 編集

平日ダイヤのみの場合は正しく実行されていたのですが、ifを使って土曜日のダイヤを追加したらどちらも実行されなくなりました。 平日ダイヤのものをコピーしました
guest

回答1

0

ReferenceError: Can't find variable: weekdayKe

というエラーメッセージのとおり、ソースコード上に weekdayKe という変数は存在しない(代入していない)ように見えます。

投稿2021/06/26 14:22

yh1224

総合スコア653

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問