ScriptManager.RegisterStartupScriptを使いこなす方法(C#)
C# の ScriptManager.RegisterStartupScript メソッドを使えば、クライアントにスクリプトコードを追加できます。このメソッドを使用すると、ページが読み込まれた後にスクリプトコードを実行できます。
ScriptManager.RegisterStartupScriptメソッドを使用するための一般的な手順は次のとおりです。
- スクリプトの呼び出しが必要なページまたはコントロールに ScriptManager コントロールを使用し、EnableScriptGlobalization プロパティを false に設定します。
<asp:ScriptManager ID="ScriptManager1" runat="server" EnableScriptGlobalization="false"></asp:ScriptManager>
- スクリプトを呼び出す場所で、Pageクラスの静的プロパティから、現在のページのScriptManagerインスタンスを取得します。
ScriptManager scriptManager = ScriptManager.GetCurrent(this.Page);
- ScriptManager.RegisterStartupScriptメソッドを呼び出して、クライアントに追加するスクリプトコード
scriptManager.RegisterStartupScript(this.Page, this.Page.GetType(), "key", "javascript code", true);
このメソッドでは、1番目のパラメータには現在のページ、2番目のパラメータには現在のページの種類、3番目のパラメータにはスクリプトのキー名、4番目のパラメータには実行するスクリプトコード、5番目のパラメータにはスクリプトをscriptタグに含めるかどうかを指定します。
以下に完全な例を示します。
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
// 获取当前页面的ScriptManager实例
ScriptManager scriptManager = ScriptManager.GetCurrent(this.Page);
// 向客户端添加脚本代码
scriptManager.RegisterStartupScript(this.Page, this.Page.GetType(), "key", "alert('Hello, World!');", true);
}
}
このページが読み込まれた後、「ハロー、ワールド!」というメッセージを含むアラートボックスが表示されます.
ScriptManager.RegisterStartupScript メソッドは、ページの読み込み後に呼び出す必要があることに注意してください。