ScriptManager 控件包括在ASP.NET 2.0 AJAX Extensions中,它用来处理页面上的所有组件以及页面局部更新,生成相关的客户端代理脚本以便能够在JavaScript中访问Web Service,所有需要支持ASP.NET AJAX的ASP.NET页面上有且只能有一个ScriptManager控件。在ScriptManager控件中我们可以指定需要的脚本库,或者指定通过JS来调用的Web Service,以及调用AuthenticationService和ProfileService,还有页面错误处理等。   ​主要内容​ 1 .控件概述 2 .一个简单的示例 3 .客户端脚本模式 4 .错误处理 5 .Services属性 6 .Scripts属性   ​一.控件概述​ ScriptManager 控件包括在ASP.NET 2.0 AJAX Extensions中,它用来处理页面上的所有组件以及页面局部更新,生成相关的客户端代理脚本以便能够在JavaScript中访问Web Service,所有需要支持ASP.NET AJAX的ASP.NET页面上有且只能有一个ScriptManager控件。在ScriptManager控件中我们可以指定需要的脚本库,或者指定通过JS来调用的Web Service,还可以指定页面错误处理等。 使用<asp:ScriptManager/>来定义一个ScriptManager,简单的ScriptManager定义形式:

属性和方法如下:




属性/方法



描述



AllowCustomError


和Web.config中的自定义错误配置区<customErrors>相联系,是否使用它,默认值为true


AsyncPostBackErrorMessage


异步回传发生错误时的自定义提示错误信息,


AsyncPostBackTimeout


异步回传时超时限制,默认值为90,单位为秒


EnablePartialRendering


是否支持页面的局部更新,默认值为True,一般不需要修改


ScriptMode


指定ScriptManager发送到客户端的脚本的模式,有四种模式:Auto,Inherit,Debug,Release,默认值为Auto,后面会仔细说到。


ScriptPath


设置所有的脚本块的根目录,作为全局属性,包括自定义的脚本块或者引用第三方的脚本块。如果在Scripts中的<asp:ScriptReference/>标签中设置了Path属性,它将覆盖该属性。


OnAsyncPostBackError


异步回传发生异常时的服务端处理函数,在这里可以捕获一场信息并作相应的处理。


OnResolveScriptReference


指定ResolveScriptReference事件的服务器端处理函数,在该函数中可以修改某一条脚本的相关信息如路径、版本等。

  ​二.一个简单的示例

这个例子其实是UpdatePanel示例,在页面中加入了日期控件和一个下拉框,根据下拉框选择的不同,日期控件背景变为不同的颜色。示例代码如下: ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajaxASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_02<%

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03

@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default"  %>

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04 

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajaxASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_02

< script  runat ="server" > ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03


ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10    void DropDownSelection_Change(Object sender, EventArgs e)

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_13ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_14    ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03{

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10        Calendar1.DayStyle.BackColor =

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10            System.Drawing.Color.FromName(ColorList.SelectedItem.Value);

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_21    }

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_22

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

</ script >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04 

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

< html  xmlns ="http://www.w3.org/1999/xhtml" >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

< head  id ="Head1"  runat ="server" >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04    

< title > ScriptManager Example </ title >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

</ head >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

< body >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04    

< form  id ="form1"  runat ="server" >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04        

< div >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04            

< asp:ScriptManager  ID ="ScriptManager1"  

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                               runat

="server" >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04            

</ asp:ScriptManager >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04            

< asp:UpdatePanel  ID ="UpdatePanel1"

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                             runat

="server" >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                

< ContentTemplate >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                    

< asp:Calendar  ID ="Calendar1"  

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                                  ShowTitle

="True"

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                                  runat

="server"  />

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                    

< div >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                        Background:

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                        

< br  />

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                        

< asp:DropDownList  ID ="ColorList"  

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                                          AutoPostBack

="True"  

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                                          OnSelectedIndexChanged

="DropDownSelection_Change"

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                                          runat

="server" >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                            

< asp:ListItem  Selected ="True"  Value ="White" >  

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                            White 

</ asp:ListItem >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                            

< asp:ListItem  Value ="Silver" >  

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                            Silver 

</ asp:ListItem >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                            

< asp:ListItem  Value ="DarkGray" >  

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                            Dark Gray 

</ asp:ListItem >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                            

< asp:ListItem  Value ="Khaki" >  

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                            Khaki 

</ asp:ListItem >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                            

< asp:ListItem  Value ="DarkKhaki" >  D

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                            ark Khaki 

</ asp:ListItem >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                        

</ asp:DropDownList >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                    

</ div >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                

</ ContentTemplate >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04            

</ asp:UpdatePanel >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04            

< br  />

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04        

</ div >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04    

</ form >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

</ body >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

</ html >   ​三.客户端脚本模式

在前面我们提到了ScriptMode属性指定ScriptManager发送到客户端的脚本的模式,它有四种模式:Auto,Inherit,Debug,Release,默认值为Auto。 1 .Auto:它会根据Web站点的Web.config配置文件来决定使用哪一种模式,只有当配置文件中retail属性设置为false: .Inherit:应该是通过程序设置ScriptMode的时候,等同于Auto?(不太了解) ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04<

system .web >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04  

< deployment  retail ="false"  />

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

</ system.web > 或者页面中的Debug指令设为true的时候会使用Debug版本,其他的情况都会使用Release版本。 ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04<

%@ Page  Language ="C#"  Debug ="true"

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04AutoEventWireup

="true"  CodeFile ="Default.aspx.cs"  Inherits ="_Default"  % > 2 3 .Debug:客户端脚本使用Debug版本,除非retail属性设为true。 4 .Release:客户端脚本使用Release版本,除非retail属性设为false。   ​四.错误处理

在页面回传时如果发生了异常AsyncPostBackError事件将被触发,错误信息的处理依赖于AllowCustomErrors属性、AsyncPostBackErrorMessage属性和Web.config中的<customErrors>配置区。下面看一个简单的错误处理例子,在AsyncPostBackError事件中捕获到异常信息并设置AsyncPostBackErrorMessage属性。 ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajaxASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_02<%

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03

@ Page Language="C#"  %>

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajaxASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_02

< script  runat ="server" > ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03


ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10    protected void ErrorProcessClick_Handler(object sender, EventArgs e)

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_13ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_14    ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03{

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10        // This handler demonstrates an error condition. In this example

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10        // the server error gets intercepted on the client and an alert is shown. 

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10        throw new ArgumentException();

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_21    }

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10    protected void SuccessProcessClick_Handler(object sender, EventArgs e)

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_13ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_14    ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03{

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10        // This handler demonstrates no server side exception.

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10        UpdatePanelMessage.Text = "The asynchronous postback completed successfully.";

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_21    }

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10    protected void ScriptManager1_AsyncPostBackError(object sender, AsyncPostBackErrorEventArgs e)

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_13ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_14    ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03{

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10        ScriptManager1.AsyncPostBackErrorMessage = "异常信息为:" + e.Exception.Message;

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_21    }

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_22

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

</ script >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

< html  xmlns ="http://www.w3.org/1999/xhtml" >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

< head  id ="Head1"  runat ="server" >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04    

< title > PageRequestManager endRequestEventArgs Example </ title >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajaxASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_02    

< style  type ="text/css" > ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03


ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_13ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_14    body {ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03}{

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10        font-family: Tahoma;

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_21    }

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_13ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_14    #AlertDiv{ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03}{

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10    left: 40%; top: 40%;

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10    position: absolute; width: 200px;

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10    padding: 12px; 

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10    border: #000000 1px solid;

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10    background-color: white; 

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10    text-align: left;

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10    visibility: hidden;

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10    z-index: 99;

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_21    }

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_13ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_14    #AlertButtons{ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03}{

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10    position: absolute;

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10    right: 5%;

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10    bottom: 5%;

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_21    }

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_22    

</ style >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

</ head >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

< body  id ="bodytag" >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04    

< form  id ="form1"  runat ="server" >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04        

< div >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04            

< asp:ScriptManager  ID ="ScriptManager1"  runat ="server"  

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04            OnAsyncPostBackError

="ScriptManager1_AsyncPostBackError" >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04            

</ asp:ScriptManager >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04 

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajaxASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_02            

< script  type ="text/javascript"  language ="javascript" > ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03


ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10                var divElem = 'AlertDiv';

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10                var messageElem = 'AlertMessage';

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10                var errorMessageAdditional = 'Please try again.';

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10                var bodyTag = 'bodytag';

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10                Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10                function ToggleAlertDiv(visString)

ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_13ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_14                ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03{

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10                     if (visString == 'hidden')

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_13ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_14                     ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03{

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10                         $get(bodyTag).style.backgroundColor = 'white';                         

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_21                     }

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10                     else

ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_13ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_14                     ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03{

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10                         $get(bodyTag).style.backgroundColor = 'gray';                         

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_21                     }

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10                     var adiv = $get(divElem);

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10                     adiv.style.visibility = visString;

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_21                }

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_13ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_14                function ClearErrorState() ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03{

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10                     $get(messageElem).innerHTML = '';

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10                     ToggleAlertDiv('hidden');                     

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_21                }

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10                function EndRequestHandler(sender, args)

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_13ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_14                ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03{

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10                   if (args.get_error() != undefined && args.get_error().httpStatusCode == '500')

ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_13ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_14                   ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03{

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10                       var errorMessage = args.get_error().message

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10                       args.set_errorHandled(true);

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10                       ToggleAlertDiv('visible');

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10                       $get(messageElem).innerHTML = '"' + 

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10                                errorMessage + '" ' + errorMessageAdditional;

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_21                   }

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_21                }

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_22            

</ script >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04            

< asp:UpdatePanel  runat ="Server"  UpdateMode ="Conditional"  ID ="UpdatePanel1" >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                

< ContentTemplate >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                    

< asp:Panel  ID ="Panel1"  runat ="server"  GroupingText ="Update Panel" >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                        

< asp:Label  ID ="UpdatePanelMessage"  runat ="server"  />

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                        

< br  />

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                        Last update:

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                        

<% =  DateTime.Now.ToString()  %>

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                        .

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                        

< br  />

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                        

< asp:Button  runat ="server"  ID ="Button1"  Text ="Submit Successful Async Postback"

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                            OnClick

="SuccessProcessClick_Handler"  OnClientClick ="ClearErrorState()"  />

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                        

< asp:Button  runat ="server"  ID ="Button2"  Text ="Submit Async Postback With Error"

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                            OnClick

="ErrorProcessClick_Handler"  OnClientClick ="ClearErrorState()"  />

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                        

< br  />

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                    

</ asp:Panel >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                

</ ContentTemplate >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04            

</ asp:UpdatePanel >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04            

< div  id ="AlertDiv" >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                

< div  id ="AlertMessage" >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                

</ div >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                

< br  />

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                

< div  id ="AlertButtons"  >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                    

< input  id ="OKButton"  type ="button"  value ="OK"  

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                           runat

="server"  onclick ="ClearErrorState()"  />

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                

</ div >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04           

</ div >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04    

</ form >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

</ body >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

</ html > 运行后时界面: ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_358

发生异常信息: ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_359

  ​五.Services属性

Services 用来管理对WebService的调用,通过<asp:ServiceReference>标签可以在Services中注册一个WebService,在运行时ScriptManager将为每一个ServiceReference对象生成一个客户端代理,<asp:ServiceReference>标签一个很重要的属性是Path,用来指定WebService的路径,如下所示: ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04<

asp:ScriptManager  ID ="SM1"  runat ="server" >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04    

< Services >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04        

< asp:ServiceReference  Path ="Service.asmx" />

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04    

</ Services >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

</ asp:ScriptManager > 看一个简单的调用WebService的例子: WebService 如下,注意在WebServiceSample上加ScriptService特性: 页面: ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04[ScriptService]

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajaxASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_02

public  class  WebServiceSample : System.Web.Services.WebService  ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03

{

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10    public WebServiceSample()

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_13ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_14    ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03{

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10        //Uncomment the following line if using designed components 

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10        //InitializeComponent(); 

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_21    }

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10    [WebMethod]

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10    public string EchoString(String s)

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_13ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_14    ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03{

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10        return "Hello " + s;

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_21    }

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_22}

ASPX ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajaxASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_02<%

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03

@ Page Language="C#" AutoEventWireup="true" CodeFile="Default3.aspx.cs" Inherits="Default3"  %>

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

< html  xmlns ="http://www.w3.org/1999/xhtml"  >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

< head  runat ="server" >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04    

< title > Untitled Page </ title >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

</ head >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajaxASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_02

< script  type ="text/javascript"  language ="JavaScript" > ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03


ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10    function OnbuttonGo_click() 

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_13ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_14    ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03{

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10        requestSimpleService = WebServiceSample.EchoString(

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10            document.getElementById('inputName').value,       //params

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10            OnRequestComplete    //Complete event

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10            );

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10        return false;

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_21    }

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10    function OnRequestComplete(result) 

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_13ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_14    ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03{

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10        alert(result);

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_21    }

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_22

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

</ script >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

< body >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04    

< form  id ="form1"  runat ="server" >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04    

< asp:ScriptManager  ID ="ScriptManager1"  runat ="server" >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04        

< Services >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04            

< asp:ServiceReference  Path ="WebServiceSample.asmx" />

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04        

</ Services >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04    

</ asp:ScriptManager >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04    

< div >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04        

< input  type ="text"  id ="inputName"  size =20 />

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04        

< input  id ="button"  type ="button"  value ="调 用"  onclick ="return OnbuttonGo_click()"  /></ div >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04    

</ form >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

</ body >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

</ html > 运行后效果如下: ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_466

当然了也可以在运行时动态的在Services中加入ServiceReference,下面看一个运行时动态加入ServiceReference的例子: ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajaxASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_02<%

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03

@ Page Language="C#" AutoEventWireup="true" CodeFile="Default3.aspx.cs" Inherits="Default3"  %>

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajaxASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_02

< script  runat ="server" > ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03


ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10    void Page_Load(object sender, EventArgs e)

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_13ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_14    ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03{

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10        ServiceReference sr = new ServiceReference();

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10        sr.Path = "WebServiceSample.asmx";

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10        ScriptManager1.Services.Add(sr);

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_21    }

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_22

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

</ script >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

< html  xmlns ="http://www.w3.org/1999/xhtml"  >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

< head  runat ="server" >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04    

< title > Untitled Page </ title >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

</ head >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajaxASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_02

< script  type ="text/javascript"  language ="JavaScript" > ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03


ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10    function OnbuttonGo_click() 

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_13ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_14    ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03{

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10        requestSimpleService = WebServiceSample.EchoString(

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10            document.getElementById('inputName').value,       //params

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10            OnRequestComplete    //Complete event

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10            );

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10        return false;

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_21    }

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10 

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10    function OnRequestComplete(result) 

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_13ASP.NET AJAX入门系列(2):使用ScriptManager控件_calendar_14    ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03{

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10        alert(result);

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_21    }

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_22

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

</ script >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04 

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

< body >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04    

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04    

< form  id ="form1"  runat ="server" >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04    

< asp:ScriptManager  ID ="ScriptManager1"  runat ="server" >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04    

</ asp:ScriptManager >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04    

< div >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04        

< input  type ="text"  id ="inputName"  size =20 />

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04        

< input  id ="button"  type ="button"  value ="调 用"  onclick ="return OnbuttonGo_click()"  /></ div >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04    

</ form >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

</ body >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

</ html > 可以看到运行后和在ScriptManager中直接加入的效果是一样的。 ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_466

  ​六.Scripts属性

关于Scripts属性到后面具体再说吧,最主要的属性有Path指定脚本的路径,ScriptMode指定客户端脚本的模式,它会覆盖ScriptManager中的ScriptMode属性,还有一个属性是IgnoreScriptPath,指定是否忽略掉ScriptManager中的ScriptPath属性。 关于ScriptManager控件就学习到这里了,至于AuthenticationService属性和ProfileService属性都很简单。


作者: ​​TerryLee​





ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04<

asp:ScriptManager  ID ="ScriptManager1"  

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04                   runat

="server" >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04      

< AuthenticationService  Path =""  />

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04      

< ProfileService  LoadProperties =""  Path =""  />

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajaxASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_02      

< Scripts > ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_03


ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10        <asp:ScriptReference/>

ASP.NET AJAX入门系列(2):使用ScriptManager控件_ajax_10

ASP.NET AJAX入门系列(2):使用ScriptManager控件_脚本_22      

</ Scripts >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04      

< Services >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04        

< asp:ServiceReference  />

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04      

</ Services >

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

ASP.NET AJAX入门系列(2):使用ScriptManager控件_asp.net_04

</ asp:ScriptManager > ScriptManager