- PR -

ボタンのダブルクリック制御

1
投稿者投稿内容
damepg
大ベテラン
会議室デビュー日: 2003/03/19
投稿数: 229
お住まい・勤務地: 東京都内
投稿日時: 2003-04-23 17:51
ボタンをダブルクリック(連続した2度押し)されても、2回目は
処理されないように制御したいのですが、なにか良い案はあります
でしょうか?
よきアドバイスをお願いします。
ぼると
常連さん
会議室デビュー日: 2003/04/09
投稿数: 42
投稿日時: 2003-04-24 12:49
これでどうでしょうか。

コード:
private void button1_Click(object sender, System.EventArgs e) {
    this.button1.Enabled = false;
    try{
        //ボタンクリック時の処理
    }
    finally{
        this.button1.Enabled = true;
    }
}


ZEBRA
常連さん
会議室デビュー日: 2003/04/14
投稿数: 38
投稿日時: 2003-04-24 13:00
作ろうとしているアプリケーションは何ですか?

Windowsアプリ?ASP.NET?
ASP.NETの場合、以下のコードでは対応できないと思います。
this.button1.Enabled = false;
try{
//ボタンクリック時の処理
}
finally{
this.button1.Enabled = true;
}
}
damepg
大ベテラン
会議室デビュー日: 2003/03/19
投稿数: 229
お住まい・勤務地: 東京都内
投稿日時: 2003-04-24 13:08
Webアプリを作ってます

引用:

ZEBRAさんの書き込み (2003-04-24 13:00) より:
作ろうとしているアプリケーションは何ですか?

Windowsアプリ?ASP.NET?
ASP.NETの場合、以下のコードでは対応できないと思います。
this.button1.Enabled = false;
try{
//ボタンクリック時の処理
}
finally{
this.button1.Enabled = true;
}
}

damepg
大ベテラン
会議室デビュー日: 2003/03/19
投稿数: 229
お住まい・勤務地: 東京都内
投稿日時: 2003-04-24 16:52
下記をForm_Load時にJavaScriptを埋め込んでいますが、
これと同じようにJavaScriptでボタンを無効にする方法はありますでしょうか?
よろしくお願いします。

'確認メッセージの埋め込み
Btn_Update.Attributes("onclick") = "return confirm('変更しますが、良いですか?');"



引用:

ぼるとさんの書き込み (2003-04-24 12:49) より:
これでどうでしょうか。

<!-- BBCode Start --><TABLE BORDER="0" ALIGN="CENTER" WIDTH="90%" CELLSPACING="0" CELLPADDING="0"><TR><TD WIDTH="5%" NOWRAP><FONT SIZE="-1">コード:</FONT></TD><TD WIDTH="95%"><HR SIZE="1" WIDTH="100%"></TD></TR><TR><TD COLSPAN="2"><PRE>
private void button1_Click(object sender, System.EventArgs e) {
this.button1.Enabled = false;
try{
//ボタンクリック時の処理
}
finally{
this.button1.Enabled = true;
}
}</PRE><HR SIZE="1" WIDTH="100%"></TD></TR></TABLE><!-- BBCode End -->


ぼると
常連さん
会議室デビュー日: 2003/04/09
投稿数: 42
投稿日時: 2003-04-25 19:14
引用:

damepgさんの書き込み (2003-04-24 16:52) より:
下記をForm_Load時にJavaScriptを埋め込んでいますが、
これと同じようにJavaScriptでボタンを無効にする方法はありますでしょうか?
よろしくお願いします。

'確認メッセージの埋め込み
Btn_Update.Attributes("onclick") = "return confirm('変更しますが、良いですか?');"



無効にするだけなら
Btn_Update.Attributes("onclick") = "this.disabled=true;"
で可能ですが、これだとポストバックしないので1回目の処理もされません。

かわりにこれではどうでしょうか。
コード:

Private Sub Btn_Update_Click(ByVal sender As Object, ByVal e As EventArgs)
    If CType(Me.Session.Item("Flag"), Boolean) = True Then
        Return
    End If
    Me.Session.Add("Flag", True")
    Try
        ''やりたい処理
    Finally
        Me.Session.Item("Flag") = False
    End Try
End Sub

1

スキルアップ/キャリアアップ(JOB@IT)