ダブルクリックを防ぐために、クリックするとすぐにボタンを無効にしようとしています。次の Javascript がその役割を果たします。
$(document).ready(function () {
$("#<%=cmTest.ClientID %>").click(function () {
$(this).attr("disabled", "disabled");
});
});
これが私のボタンです:
<asp:Button ID="cmTest" Text="Test" runat="server" />
これが私のVBです:
Private Sub cmTest_Click(sender As Object, e As System.EventArgs) Handles cmTest.Click
Threading.Thread.Sleep(5000)
End Sub
jQuery .click イベントがボタンに割り当てられるたびに、クライアント側の機能は動作しますが、サーバー側のイベントは実行されません。jQuery を削除すると、サーバー側のイベントが実行されます。onclick=javascript:DisableButton();return false;
ボタン自体に割り当てたようなものです。サーバー側のイベントをトリガーできるようにしながら、その Javascript をボタンに割り当てる方法はありますか?
編集:ページはまだポストバックされるため、ボタンへの割り当てとはまったく異なります。return false;
実際return false;
に実行すると、ここで起こっていることではないボタンの送信がキャンセルされます。