前提・実現したいこと
GAS初心者です。
https://qiita.com/Suibari_cha/items/87503c55d984ff0f43e6
こちらを参考にして、クイズを作り、さらに正解不正解のカウントをしたいと思っております。
removeEventListenerを使ってみたのですが、not defindとなってしまいます。
発生している問題・エラーメッセージ
// 正解ボタンを押した時 Uncaught ReferenceError: goBatsu is not defined at HTMLButtonElement.goMaru // 不正解ボタンを押した時 Uncaught ReferenceError: goMaru is not defined at HTMLButtonElement.goBatsu
removeEventListenerは未定義のものは無視して次が実行されると理解していたのですが、間違っているのでしょうか。
該当のソースコード
maru, batsuはそれぞれ正解・不正解のボタンです。
toiRowをGASから受け取って、countMaru
、countaBatsu
に渡したいため、addEventListenerを使っています。
html
1 2 maru.addEventListener('click',function goMaru(){ 3 console.log("goMaru実行"); 4 maru.removeEventListener('click',goMaru); 5 batsu.removeEventListener('click',goBatsu); 6 countMaru(toiRow);}); 7 8 batsu.addEventListener('click',function goBatsu(){ 9 console.log("goBatsu実行"); 10 maru.removeEventListener('click',goMaru); 11 batsu.removeEventListener('click',goBatsu); 12 countBatsu(toiRow);}); 13
試したこと
countMaru
、countBatsu
それぞれの関数内にremoveEventHandlerを入れる方法も取ってみましたが、同じようにgoBatsu
,goMaru
が未定義だと返されました。
{once:true}
も使ってみましたが、自身でない方のボタンが生き残ってしまうため、正解→正解→不正解とすると、これまで正解していたところも不正解カウントされてしまいます。
説明が拙くてすみません。必要な情報がなければご指摘ください。
回答4件
あなたの回答
tips
プレビュー