- - PR -
ASP.NETにおいて汎用的なAttribute["onclick"]の記述を実現するには?
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2003-11-02 12:41
いつも参考にさせてもらっています。
削除や、通常のHTMLでいえばSUBMITに相当する処理を行う場合、 ユーザーに念押しして実行するパターンもあるので、 従来のASPでは、 Response.Write "onclick=return confirm('削除してもよろしいですか?')" などと記述して実現していました。 ASP.NETにおいて、同じ意図の処理は 例えば、あるWebコントロールボタンに対して btn.Attributes["onclick"] = "return confirm('削除してもよろしいですか?')" ; と記述すればやはり、OKです。 ここまでは何の問題もありませんし、動作しています。 さて、この処理内容を汎用的に関数化して、Web関係のコントロールに対して private object AddLastConfirm( object obj ) { // オブジェクトに対して // Attributes["onclick"] = // "return confirm('削除してもよろしいですか?')" ; // と同等のコードを記述する必要がある return obj; } ------ 呼び出し側--------------------------------- AddLastConfirm(何らかのオブジェクトを示す変数) としたとき、typeof やら GetTypeやらキャストやらやってみたのですが、 うまくいきません。まだ継承のさせかたや、 TypeConverterクラスなどが理解できていないせいなのですが、 ヒントをいただけないでしょうか。よろしくお願いします。 なお、AddLastConfirm 内では Debug.WriteLineで表示させたところ、 GetType().ToString()では元のオブジェクトの型は把握できていました。 このあたりをうまく使うのだとは思うのですが。。。。 |
|
投稿日時: 2003-11-03 23:44
private void AddLastConfirm(WebControl wc)
{ wc.Attributes["onclick"] = "return confirm('OK')"; } 単純にこれでは? 呼び出し側は、AddLastConfirm(Button1) はずしてたらすいません。 |
|
投稿日時: 2003-11-05 13:23
ありがとうございました。
ちょっと挑戦してみます。結果をまた報告します。 |
|
投稿日時: 2003-11-05 13:34
ありがとうございました。ご指導の方法でうまくいきました。
助かりました。 |
1