ASP.net(Webform)でconfirmの戻り値を制御(c#) への返答
投稿で使用できる特殊コードの説明。(別タブで開きます。)
以下の返答は逆順(新しい順)に並んでいます。
投稿者 ASP.net(Webform)のイベント処理(c#)  (社会人)
投稿日時
2025/9/25 11:23:25
自己解決
色々試してみたが、page_loadにConfirmを出してもサーバー処理後にメッセージが出るので、post前のonClick or onClientClickで処理するしかないと判断、CommandField、Autogenerateのボタンは使わず、テンプレートタグ内でasp:buttonを定義してonClientClickでConfirmを出すようにした。
色々試してみたが、page_loadにConfirmを出してもサーバー処理後にメッセージが出るので、post前のonClick or onClientClickで処理するしかないと判断、CommandField、Autogenerateのボタンは使わず、テンプレートタグ内でasp:buttonを定義してonClientClickでConfirmを出すようにした。
投稿者 リバティーアイランド  (社会人)
投稿日時
2025/9/17 18:06:14
gridviewのAutoGenerateDeleteButtonをtrueにした時の挙動についてです。
RowDeletingイベントで行削除処理自体は制御できている状態ですが、その前に確認メッセージの判定を入れたいです。
gridの外に削除ボタンを設ける場合、html上のOnClickにjsでconfirmとその戻り値の判定を入れれば制御可能と思いますが、
AutoGenerate系で表示されるボタンはhtml上のソースを見てもコントロールの表記がなく、OnClickも定義できないように思えるため、
postback→page_load→RowCommand→RowDeletingの順に挙動しています。
更新の場合の入力チェック等の場合はalert(戻り値なしでよい)でメッセージ出してRowUpdatingをキャンセルすればいいので、
スクリプトコマンドをRegisterClientScriptBlockでalertを出してしまえばよいのですが、
confirmのボタンを押した結果をC#側で取得して処理分岐する方法がわかりません。
ご存じの方ご教示ください。
環境
.NetFrameWork 4.8.1
Webformテンプレートプロジェクトを使用。
サーバーサイド:c#
RowDeletingイベントで行削除処理自体は制御できている状態ですが、その前に確認メッセージの判定を入れたいです。
gridの外に削除ボタンを設ける場合、html上のOnClickにjsでconfirmとその戻り値の判定を入れれば制御可能と思いますが、
AutoGenerate系で表示されるボタンはhtml上のソースを見てもコントロールの表記がなく、OnClickも定義できないように思えるため、
postback→page_load→RowCommand→RowDeletingの順に挙動しています。
更新の場合の入力チェック等の場合はalert(戻り値なしでよい)でメッセージ出してRowUpdatingをキャンセルすればいいので、
スクリプトコマンドをRegisterClientScriptBlockでalertを出してしまえばよいのですが、
confirmのボタンを押した結果をC#側で取得して処理分岐する方法がわかりません。
ご存じの方ご教示ください。
環境
.NetFrameWork 4.8.1
Webformテンプレートプロジェクトを使用。
サーバーサイド:c#
色々試してみたが、page_loadにConfirmを出してもサーバー処理後にメッセージが出るので、post前のonClick or onClientClickで処理するしかないと判断、CommandField、Autogenerateのボタンは使わず、テンプレートタグ内でasp:buttonを定義してonClientClickでConfirmを出すようにした。