.NET

C#のRegisterStartupScriptでJavaScript出力

ASP.NET における JavaScript は、aspx ファイル内に埋め込むよりも C# や VB.NET のコードから出力する方が好ましいという記述を見つけた。

JavaScript も外部ファイル化してしまえば気にすることもないのだろうけど、動的に C# などのコードから値を埋め込みたい場合は、確かにそっちの方が都合がいいですね。

実際に、ASP.NET の Page クラス(System.Web.UI)には RegisterStartupScript メソッドがあり、これに JavaScript の記述を渡せば、HTML 上で

タグの直前に出力してくれます。

さて、そんな RegisterStartupScript メソッドですが、C# での使い方は下記の通り。

しかし、現在はこの引数に対応した方法は推奨されていないので、推奨されているメソッドに対応させます。

このメソッドは Page クラスではなく、ClientScriptManager クラスを使用します。