すべてのフォーム送信アクションでトリガーされるようにjQueryBlockUIプラグインを作成しました。
$("form").submit(function() {
jQuery.blockUI();
});
送信する前に、いくつかのフォームを検証したいと思います。
<form method="POST" onSubmit="return(confirm('Really submit?'));">
確認ポップアップボックスで[キャンセル]をクリックすると、BlockUIがトリガーされ、インターフェイスがブロックされます。ブロックが解除されることはありません。
次に例を示します:http://jsfiddle.net/8B8yA/。
問題は、「キャンセル」が押されたときにBlockUIがトリガーされないようにする方法です。
$.unblockUI()
「キャンセル」アクションに追加してみました:
if(!confirm("Really submit?")) {
$.unblockUI();
return(false);
}
ただし、ブロックアクションが呼び出される前にブロック解除アクションが呼び出されるため、明らかに機能しません。