• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ホームページビルダー eラーニングについて(JavaScript))

ホームページビルダーeラーニングのテスト作成方法とJavaScriptの知識について

このQ&Aのポイント
  • ホームページビルダー10を使用してeラーニングのテストを作成しています。受講者の回答後、スコアと合否を管理者にメールで送信する機能に加えて、各問題の正誤も送信できるかどうかについて相談です。また、JavaScriptの高度な知識が必要なのかどうかも知りたいです。
  • ホームページビルダー10を使ってeラーニングのテストを作成しています。受講者の回答後、スコアと合否を管理者にメールで送信する機能がありますが、各問題の正誤も一緒に送信することはできるでしょうか?また、JavaScriptの知識が必要なのか教えて欲しいです。
  • ホームページビルダー10を使用してeラーニングのテストを作成しています。受講者が回答後、スコアと合否を管理者にメールで送信する機能について、各問題の正誤も送信したいです。JavaScriptの知識が必要なのか教えていただけますか?

質問者が選んだベストアンサー

  • ベストアンサー
  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.1

>スコアと合否を管理者にメールで送信する機能があるのですが~~ どうやってスコアをつけているのか不明ですが、これが出来ているのですから、各問題の回答も送れるはずでは? どこかで、各回答の正誤を見てスコアをつけているでしょうから、そのときに回答(あるいは正誤)を控えておくなりして、送信時にいっしょに送るようにすれば可能だと思われます。

moyoon
質問者

お礼

ありがとうございます。よくわからないのですが、「採点」ボタンを押したとき、↓の辺りで回答を控えたりスコアを加算したりしてると思うのですが(正解だった場合obj.result = trueになる)、それを「送信」ボタンを押したときに送る方法が見当つかないのです・・・ ゆっくり勉強していくしかないでしょうかね。 //---------------------- // for Checking Answers //---------------------- this.check = function() { var score = 0; var nQ = this.data.questions.length; for(var i=0; i<nQ; i++){ var objQ = this.data.questions[i]; var func = eval("this.checkEach" + objQ.type); if(typeof func == "function"){ var id = this.data.idPrefix + (i+1).toString(); var sc = func(this.doc, objQ, id); score += sc; // show result this.doc.fShowAns = this.data.showAnsEach; this.doc.bShowAns = this.data.showAnsEach; this.doc.showResultEach(objQ, id, sc>0 ? true : false); (中略) this.checkEachSelection = function(doc, obj, id) { obj.score = 0; if(obj.single){ // Single Selection obj.result = false; var ansObj = doc.getQ(id); var ans; for(var i=0; i<ansObj.length; i++){ if(ansObj[i].checked) ans = ansObj[i].value; ansObj[i].disabled = true; } if( ans == obj.answer ){ // judge obj.score = obj.gain; obj.result = true; } (後略)

moyoon
質問者

補足

最善ではないかもしれませんが自己解決しました! ありがとうございました! 誤の問番号だけわかれば良いので、一応このようにしました。 htmlファイルに以下を追加 <INPUT type="hidden" name="Wrong" value=""> HpbELTest80.jsに以下を追加 (score += sc;の下に) if (objQ.result == false) {    wrong += "問"+ (i+1) + "," } (送信時に) resultform.Wrong.value = this.data.wrong;

関連するQ&A

専門家に質問してみよう