サイト内のボタンを押したときに、
jQueryのダイアログボックスを表示して
ダイアログボックスを閉じたときにjavascript内の
if (Qcnt == Question.length)を実行させたいのですが方法はありますか?
ダイアログボックス閉じたときの判定でjQuery('#dialog').dialog('isOpen')を
試したのですが正しい動かし方がわかりませんでした。
初歩的な質問ですがご回答お待ちしております。
jQuery
1let Qcnt = 0; 2let Q = document.getElementById('_question'); 3// 問題を表示するオブジェクトを取得する 4let A1 = document.getElementById('_ans1'); 5let A2 = document.getElementById('_ans2'); 6let A3 = document.getElementById('_ans3'); 7let A4 = document.getElementById('_ans4'); 8let A5 = document.getElementById('_ans5'); 9let lst= document.getElementById('last'); 10var $button = document.querySelector('.button') 11// 正解数を保持する値 12let Correct = 0; 13// 現在の問題数 14let Qcnt2 15// 問題を画面に表示する処理 16function Q_Set() { 17Qcnt2=Qcnt 18Qcnt2=Qcnt2+1 19Q.textContent = "問題"+Qcnt2+" : "+Question[Qcnt][0]; 20A1.textContent = Question[Qcnt][1]; 21A2.textContent = Question[Qcnt][2]; 22A3.textContent = Question[Qcnt][3]; 23A4.textContent = Question[Qcnt][4]; 24A5.textContent = Question[Qcnt][5]; 25lst.textContent=""; 26}; 27// 画面に表示 28Q_Set(); 29// 回答ボタンを押したときの処理 30function Answer_Check(ans) { 31var buttons = [ 32 { 33 text: "閉じる", 34 click: function () { $(this).dialog('close'); } 35 } 36 ]; 37if(ans == Question[Qcnt][6]) { 38// ダイアログを表示 39showDialog("回答", "正解! 答えは, "+ Question[Qcnt][6], buttons); 40Correct++; 41} else { 42// ダイアログを表示 43showDialog("回答", "不正解! 答えは, "+ Question[Qcnt][6], buttons); 44} 45if (Qcnt2 == Question.length) { 46Q.textContent = "問題は以上です. 正解数は" + Correct + "でした!"; 47A1.textContent = ""; 48A2.textContent = ""; 49A3.textContent = ""; 50A4.textContent = ""; 51A5.textContent = ""; 52lst.textContent = "このページを再読み込みすると, 問題を再チャレンジできます! "; 53document.getElementById('btn').style.visibility = 'hidden'; 54} else { 55// 画面に表示 56Qcnt++; Q_Set();}} 57function showDialog(title, message, buttons) 58{ 59 var html_dialog = '<div>' + message + '</div>'; 60 $(html_dialog).dialog({ 61 title: title, 62 buttons: buttons, 63 close: function() { $(this).remove();} 64 }); 65}

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/05/06 09:39
2022/05/06 13:52