jqueryを使用するjspファイルを含むクラスのWebアプリケーションを作成しています。送信する直前にアプリがアラートをトリガーするようにしたい。これは私の実際のプログラムでは機能する場合もあれば、アラートがトリガーされない場合もあります。常に機能する、または機能しないインスタンスを特定できないようです。Firebugブレークポイントを追加しない限り、エラーコンソールはこの問題について沈黙しています。それからそれは私に与えます
Error: attempt to run compile-and-go script on a cleared scope
Source File: http://code.jquery.com/jquery-1.7.2.min.js
Line: 2
しかし、それが何を意味するのか私にはわかりません。Firebugに関する限り、アラートメッセージの前に評価が停止する理由がわかりません。
問題を文書化したsscceを作成しようとしましたが、送信が機能しなかったため、実際のプログラムとはあまりにも異なっていたと思います。実際のプログラムのコードをいくつか示します。(SSCCEがないことをお詫びします。)
$(document).ready(function() {
$("#questionDisplay").submit(function() {
var correctAnswer = $(".correctAnswer").attr("value");
var answer = "";
if ($(".multipleChoice").length > 0) {
answers = $("input:checked");
for (var obj in answers) {
answer += obj.attr("value") + "#";
}
} else if ($(".fillBlank").length > 0) {
for (var answerNo = 1; $(".answer" + answerNo).length > 0; ++answerNo) {
answer += $(".answer" + answerNo).attr("value") + "#";
}
} else {
answer = $(".answer1").attr("value");
}
if (answer == correctAnswer) {
alert("Yes! Correct!");
} else {
alert("Sorry, incorrect.");
}
});
});
jspは非常に混乱しています(スクリプトレットを使用する必要があります:()が、見たい場合はlemmeだけを知ってください。
送信ハンドラーを毎回動作させるにはどうすればよいですか?