実現したいこと
タグの重複をなくし、自動的に結果が出るように構築したいです。
タグをわかりやすくするため、路線別にnankai、sembokuとタグを割り振っていた際には計算が成功しました。
fareに変えたとたん、できなくなりました。なぜでしょうか?
前提
運賃計算プログラムを作っています。
違う路線を乗せると、なぜか挙動しないです。
恐らくタグの一部がバッティングしているものだと考えます。
cssにしろjavascriptにしろ、バッティングするタグは、
最初のものが無効化され、最後のほうが優先されてしまいます。
この状況を打破するには?
html文↓
<script src="南海 20220803 Wed\jsファイル 20220801 Mon\運賃 20220801 Mon.js"></script> <script src="泉北 20220801 Mon\jsファイル 20220801 Mon\運賃 20220801 Mon.js"></script> <script src="泉北 20220801 Mon\jsファイル 20220801 Mon\距離 20231219 Wed.js"></script> <style> textarea.hoge { width: 150px; height:200px;} </style> <!--HTMLここまで--> <!--問題--> <br> <hr> <br> <!--阪和線--> <body> <form name="fare_f"> 出発駅は <select name="fare_q1"> <option>選択肢</option> <option id="hoge">難波</option> <option>新今宮</option> <option>天下茶屋</option> <option>堺東</option> <option>中百舌鳥</option> <option>深井</option> <option>泉ケ丘</option> </select> です。 <p> 到着駅は <select name="fare_q2"> <option>選択肢</option> <option id="hoge">難波</option> <option>新今宮</option> <option>天下茶屋</option> <option>堺東</option> <option>中百舌鳥</option> <option>深井</option> <option>泉ケ丘</option> </select> です。<p> <input id="result11" type="text11" value="" size="30"> <br> <input id="result21" type="text21" value="" size="30"> <input type="reset" value="リセット"></p> <input type="button" name="b1" value="運賃検索" onclick="fare_kotae()"> <p></input> <table border="1"> <input name=fare_tokuten id="fare_tokuten_2" size="6" type="hidden"></input></th></tr> <tr><th>普通大人</th><th><input name=fare_futsu_otona id="fare_futsu_otona_2">円</input></th></tr> <tr><th>普通小児</th><th><input name=fare_futsu_shoni id="fare_futsu_shoni_2">円</input></th></tr> <tr><th>通勤定期大人1か月</th><th><input name=fare_tsukin_teiki_otona_1 id="fare_tsukin_teiki_otona_1_2">円</input></th></tr> <tr><th>通勤定期小児1か月</th><th><input name=fare_tsukin_teiki_shoni_1 id="fare_tsukin_teiki_shoni_1_2">円</input></th></tr> <tr><th>通勤定期大人3か月</th><th><input name=fare_tsukin_teiki_otona_3 id="fare_tsukin_teiki_otona_3_2">円</input></th></tr> <tr><th>通勤定期小児3か月</th><th><input name=fare_tsukin_teiki_shoni_3 id="fare_tsukin_teiki_shoni_3_2">円</input></th></tr> <tr><th>通勤定期大人6か月</th><th><input name=fare_tsukin_teiki_otona_6 id="fare_tsukin_teiki_otona_6_2">円</input></th></tr> <tr><th>通勤定期小児6か月</th><th><input name=fare_tsukin_teiki_shoni_6 id="fare_tsukin_teiki_shoni_6_2">円</input></th></tr> <tr><th>通学定期大人1か月</th><th><input name=fare_tsugaku_teiki_otona_1 id="fare_tsugaku_teiki_otona_1_2">円</input></th></tr> <tr><th>通学定期小児1か月</th><th><input name=fare_tsugaku_teiki_shoni_1 id="fare_tsugaku_teiki_shoni_1_2">円</input></th></tr> <tr><th>通学定期大人3か月</th><th><input name=fare_tsugaku_teiki_otona_3 id="fare_tsugaku_teiki_otona_3_2">円</input></th></tr> <tr><th>通学定期小児3か月</th><th><input name=fare_tsugaku_teiki_shoni_3 id="fare_tsugaku_teiki_shoni_3_2">円</input></th></tr> <tr><th>通学定期大人6か月</th><th><input name=fare_tsugaku_teiki_otona_6 id="fare_tsugaku_teiki_otona_6_2">円</input></th></tr> <tr><th>通学定期小児6か月</th><th><input name=fare_tsugaku_teiki_shoni_6 id="fare_tsugaku_teiki_shoni_6_2">円</input></th></tr> </table> <body> </body> <!--HTMLここまで--> <!--問題--> <hr /> <hr /> <hr /> <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>フォームに入力された数値の取得</title> </head>
js文↓
function fare_kotae() { fare_ten=0 if((fare_f.fare_q1.value == "難波"&&fare_f.fare_q2.value == "新今宮")||(fare_f.fare_q1.value == "新今宮"&&fare_f.fare_q2.value == "難波")) {fare_f.fare_q1.style.backgroundColor="aqua ";fare_ten = fare_ten + 201110002} else if((fare_f.fare_q1.value == "難波"&&fare_f.fare_q2.value == "天下茶屋")||(fare_f.fare_q1.value == "天下茶屋"&&fare_f.fare_q2.value == "難波")) {fare_f.fare_q1.style.backgroundColor="aqua ";fare_ten = fare_ten + 201110003} else if((fare_f.fare_q1.value == "難波"&&fare_f.fare_q2.value == "堺東")||(fare_f.fare_q1.value == "堺東"&&fare_f.fare_q2.value == "難波")) {fare_f.fare_q1.style.backgroundColor="aqua ";fare_ten = fare_ten + 201110008} else if((fare_f.fare_q1.value == "新今宮"&&fare_f.fare_q2.value == "天下茶屋")||(fare_f.fare_q1.value == "天下茶屋"&&fare_f.fare_q2.value == "新今宮")) {fare_f.fare_q1.style.backgroundColor="aqua ";fare_ten = fare_ten + 201110002} else if((fare_f.fare_q1.value == "新今宮"&&fare_f.fare_q2.value == "堺東")||(fare_f.fare_q1.value == "堺東"&&fare_f.fare_q2.value == "新今宮")) {fare_f.fare_q1.style.backgroundColor="aqua ";fare_ten = fare_ten + 201110009} else if((fare_f.fare_q1.value == "天下茶屋"&&fare_f.fare_q2.value == "堺東")||(fare_f.fare_q1.value == "堺東"&&fare_f.fare_q2.value == "天下茶屋")) {fare_f.fare_q1.style.backgroundColor="aqua ";fare_ten = fare_ten + 201110008} else fare_f.fare_q1.style.backgroundColor="red" fare_f.fare_tokuten.value=fare_ten var myFunc = function(fare_kotoae_2) { const str = document.getElementById("color3").value; document.getElementById("span3").textContent = str; } //ここから if (fare_f.fare_tokuten.value==201110002) { fare_f.fare_futsu_otona.value = Number("180"); fare_f.fare_futsu_shoni.value = Number("90"); fare_f.fare_tsukin_teiki_otona_1.value = Number("5980"); fare_f.fare_tsukin_teiki_shoni_1.value = Number("3480"); } else if (fare_f.fare_tokuten.value==201110003) { fare_f.fare_futsu_otona.value = Number("180"); fare_f.fare_futsu_shoni.value = Number("90"); fare_f.fare_tsukin_teiki_otona_1.value = Number("6860"); fare_f.fare_tsukin_teiki_shoni_1.value = Number("3890"); fare_f.fare_tsukin_teiki_otona_3.value = Number("19560"); fare_f.fare_tsukin_teiki_shoni_3.value = Number("11080"); fare_f.fare_tsukin_teiki_otona_6.value = Number("37050"); fare_f.fare_tsukin_teiki_shoni_6.value = Number("20980"); fare_f.fare_tsugaku_teiki_otona_1.value = Number("2450"); fare_f.fare_tsugaku_teiki_shoni_1.value = Number("1700"); } else if (fare_f.fare_tokuten.value==201110008) { fare_f.fare_futsu_otona.value = Number("290"); fare_f.fare_futsu_shoni.value = Number("150"); fare_f.fare_tsukin_teiki_otona_1.value = Number("10710"); fare_f.fare_tsukin_teiki_shoni_1.value = Number("3890"); } else if (fare_f.fare_tokuten.value==201110009) { fare_f.fare_futsu_otona.value = Number("290"); fare_f.fare_futsu_shoni.value = Number("150"); fare_f.fare_tsukin_teiki_otona_1.value = Number("11370"); fare_f.fare_tsukin_teiki_shoni_1.value = Number("3890"); } else if (fare_f.fare_tokuten.value==2011100012) { fare_f.fare_futsu_otona.value = Number("290"); fare_f.fare_futsu_shoni.value = Number("150"); fare_f.fare_tsukin_teiki_otona_1.value = Number("12690"); fare_f.fare_tsukin_teiki_shoni_1.value = Number("4300"); } }
js文↓
function fare_kotae() { fare_ten = 0; if ((fare_f.fare_q1.value=="栂・美木多" && fare_f.fare_q2.value=="光明池") || (fare_f.fare_q1.value=="光明池" && fare_f.fare_q2.value=="栂・美木多")) { fare_f.fare_q1.style.backgroundColor = "aqua"; fare_ten = fare_ten + 201120001; } else if (((fare_f.fare_q1.value=="泉ケ丘" && fare_f.fare_q2.value=="栂・美木多") || (fare_f.fare_q1.value=="栂・美木多" && fare_f.fare_q2.value=="泉ケ丘")) || ((fare_f.fare_q1.value=="中百舌鳥" && fare_f.fare_q2.value=="深井") || (fare_f.fare_q1.value=="深井" && fare_f.fare_q2.value=="中百舌鳥")) || ((fare_f.fare_q1.value=="光明池" && fare_f.fare_q2.value=="和泉中央") || (fare_f.fare_q1.value=="和泉中央" && fare_f.fare_q2.value=="光明池"))) { fare_f.fare_q1.style.backgroundColor = "aqua"; fare_ten = fare_ten + 201120002; } else fare_f.fare_q1.style.backgroundColor="red" fare_f.fare_tokuten.value=fare_ten var myFunc = function(fare_kotoae_2) { const str = document.getElementById("color3").value; document.getElementById("span3").textContent = str; } //ここから if (fare_f.fare_tokuten.value==201120001) { fare_f.fare_futsu_otona.value = Number("180"); fare_f.fare_futsu_shoni.value = Number("90"); fare_f.fare_tsukin_teiki_otona_1.value = Number("6950"); fare_f.fare_tsukin_teiki_shoni_1.value = Number("3480"); } else if ((fare_f.fare_tokuten.value==201120002)&&(!((fare_f.fare_q1.value=="光明池" && fare_f.fare_q2.value=="和泉中央") || (fare_f.fare_q1.value=="和泉中央" && fare_f.fare_q2.value=="光明池")))) { fare_f.fare_futsu_otona.value = Number("200"); fare_f.fare_futsu_shoni.value = Number("100"); fare_f.fare_tsukin_teiki_otona_1.value = Number("7770"); fare_f.fare_tsukin_teiki_shoni_1.value = Number("3890"); }
発生している問題・エラーメッセージ
そもそも、南海電車の運賃結果が出ない。
該当のソースコード
ソースコード
fare以外の部分に数値をつけていじったところ、
無変化なところと、泉北線文の挙動がおかしくなるところが出ました。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。

あなたの回答
tips
プレビュー