初心者のため、コードの書き方がまだまだです。チェックボックスにチェックすることで、クラスを変更したいのですが、なぜonchangeがうまくいかないのかわかりません。
main.js:1 Uncaught ReferenceError: $ is not defined
VM1151 index.html:9 Uncaught ReferenceError: change is not defined
at HTMLInputElement.onchange
原因が分かる方どうかお願いします。
ひとつめの、Uncaught ReferenceError: $ is not definedはjQueryを読み込んだら出なくなったのですが、なぜでしょうか?jQueryは使ってないと思うのですが、、
<!DOCTYPE html> <html lang="ja"> <head> <meta charset="utf-8"> <link rel="stylesheet" href="css/styles.css"> </head> <body> <div id="box" class="unchecked"> <input type="checkbox" id="checkbox" onchange="change()" >入力内容に間違いがないことを確認しました。 </div> <script src="js/main.js"></script> </body> </html>
(function() { 'use strict'; var isChecked = document.getElementById('checkbox').checked; var checkbox = document.getElementById('checkbox'); var box = document.getElementById('box'); var checked = document.getElementsByClassName('checked'); var unchecked = document.getElementsByClassName('unchecked'); function change() { if (isChecked == true) { box.classList.add('checked'); box.classList.remove('unchecked'); } if (isChecked == false) { box.classList.remove('checked'); box.classList.add('unchecked'); } } })();
#box { background: #F2C879; padding: 5px; border-radius: 10px; width: 350px; text-align: center; margin: 10px auto; } .unchecked { border: red solid 2px; color: #666666; } .checked { border: #E87D0D solid 2px; color: black; }
回答2件
あなたの回答
tips
プレビュー