1
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
    <ContentTemplate>

        <asp:Button ID="btnBackup" runat="server" Text="Backup" 
            onclick="btnBackup_Click" />

    </ContentTemplate>
</asp:UpdatePanel>

アイデアは、ユーザーがボタンをクリックすると無効になり、関数が呼び出され、関数の最後にボタンが再び有効になるというものです。

protected void btnBackup_Click(object sender, EventArgs e)
{
    btnBackup.Enabled = false;
    UpdatePanel1.Update();
    doSomething();
}

ただし、doSomething() が完了するまでボタンは無効になりません。doSomething() をコメントアウトすると、ボタンをクリックするとすぐに無効になります。

関数呼び出しの前にボタンを無効にする方法はありますか?

4

2 に答える 2

0

OnClientClickプロパティを使用できます

<asp:Button ID="btnBackup" runat="server" Text="Backup"  OnClientClick = "this.disabled = true;" onclick="btnBackup_Click" />
于 2012-11-16T13:49:27.883 に答える
0

次の 2 つのいずれかが必要です。

  • UpdatePanel のトリガーを定義する
  • ボタンを AutoPostback に設定します
于 2012-11-16T14:09:27.397 に答える