主要介紹如下三種方式,分別表現在3個Button的Click事件中,代碼如下:
前台:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="RunJSFunctionAfterPostBack.aspx.cs" Inherits="EricSunWebAppProject.RunJSFunctionAfterPostBack" %><!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"> <title></title> <script src="Scripts/jquery-1.9.0.min.js"></script></head><body> <form id="form1" runat="server"> <asp:ScriptManager ID="Scriptmanager1" runat="server" /> <div> <asp:Button ID="Button1" runat="server" Text="Button1" OnClick="Button1_Click" /> <asp:Button ID="Button2" runat="server" Text="Button2" OnClick="Button2_Click" /> <asp:Button ID="Button3" runat="server" Text="Button3" OnClick="Button3_Click" /> </div> </form></body></html><script type="text/javascript"> function AlertMyInfo() { alert("Hello Eric Sun."); }</script>
【註:要能夠執行Button1中的Click方法,前台的<asp:ScriptManager ID="Scriptmanager1" runat="server" />必須加上。】
後台:
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;namespace EricSunWebAppProject{ public partial class RunJSFunctionAfterPostBack : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void Button1_Click(object sender, EventArgs e) { string callbackJSFunction = "<script language='javascript'>function f(){AlertMyInfo(); Sys.Application.remove_load(f) ;}; Sys.Application.add_load (f);</script>"; Page.ClientScript.RegisterStartupScript(this.GetType(), "HelloKey", callbackJSFunction); } protected void Button2_Click(object sender, EventArgs e) { Response.Write("<script language=JavaScript> alert('Hello Eric Sun.'); </script>"); } protected void Button3_Click(object sender, EventArgs e) { string s = "<script language=JavaScript>alert('Hello Eric Sun');</script>"; Page.ClientScript.RegisterStartupScript(this.GetType(), "HelloKey", s); } }}
相關知識請看:
http://www.cnblogs.com/xiaozai/archive/2010/06/12/1756948.html
http://www.telerik.com/community/forums/aspnet-ajax/button/firing-javascript-function-after-postback.aspx ***