質問: ページにjavascriptを埋め込むには? いつもお世話になっております。 asp.netでwebを作っております。 ボタン押下時に確認メッセージを出したく思っております。 まず考えたのが.aspxのボタンの場所にonclientclickに記述したのですが.csのボタン押下処理(db更新)より.aspxのボタン押下処理の方が早く出てしまいました。 次に.csにjavascriptを埋め込むことにしました 参照:http://www.atmarkit.co.jp/fdotnet/dotnettips/160regscript/regscript.html がしかしregisterclientscriptblockなどは古い形式です。警告が出てしまいます。 引数がよくないみたいなんですがどなたかわかる方ご教授お願いいたします。
回答: お世話になります。 .net framework のバージョンは書いてませんが 2.0 ですよね、きっと。 何を使うべきかは警告メッセージの後ろに書いてあります。 [警告メッセージより引用] 'system.web.ui.page.registerclientscriptblock(string, string)' は古い形式です: 'the recommended alternative is clientscript.registerclientscriptblock(type type, string key, string script). http://go.microsoft.com/fwlink/?linkid=14202' [/警告メッセージより引用] パラメータとして何を渡すべきかは msdn に書いてあります。 http://msdn2.microsoft.com/ja-jp/library/system.web.ui.clientscriptmanager.registerclientscriptblock(vs.80).aspx [msdn より引用] パラメータ type 登録するクライアント スクリプトの型。 key 登録するクライアント スクリプトのキー。 script 登録するクライアント スクリプト リテラル。 解説 クライアント スクリプトは、そのキーと型で一意に識別されます。同じキーと型を持つスクリプトは重複していると見なされます。同じ型とキーのペアを持つスクリプトは、同じページに 1 つだけ登録できます。既に登録されているスクリプトを登録しようとしても、重複したスクリプトは作成されません。 [/msdn より引用] なので、こんな感じになると思います。 registerclientscriptblock("startup", "") ↓ clientscript.registerclientscriptblock(this.gettype(), "startup", "")