scriptmanager控件使用

今天用到scriptmanager,顺便整理一下。

----------------------------网络资料----------------------------------------------------

一.控件概述

  ScriptManager控件包括在ASP.NET 2.0 AJAX Extensions中,它用来处理页面上的所有组件以及页面局部更新,生成相关的客户端代理脚本以便能够在JavaScript中访问Web Service,所有需要支持ASP.NET AJAX的ASP.NET页面上有且只能有一个ScriptManager控件。在ScriptManager控件中我们可以指定需要的脚本库,或者指定通过JS来调用的Web Service,还可以指定页面错误处理等。

资料中如实是说: 
      1, ScriptManager(脚本控制器)是asp.net ajax存在的基础.
      2, 一个页面只允许有一个ScriptManager,并且放在其他ajax控件的前面.
      3,ScriptManager掌管着客户端Ajax页的多有脚本,并在页面中注册Ajax类库,用来实现页面的局部更新和对Web服务的调用.
下面是scriptManager的结构:


下面介绍下ScriptManager的几个属性和一些子元素


   a, EnablePartialRendering: (默认局部渲染)比较重要,用来表示此页面是否允许局部刷新(默认为true)
   b, AllowCustomErrorsRedirect :当发生错误时候,是否导航到web.config中定义的错误页面,如果设置为false,则使用AsyncPostBackErrorMessage和OnAsyncPostBackError提示错误.
   c, AsyncPostBackErrorMessage: 异步调用发生错误时的提示信息.
   d, OnAsyncPostBackError: 异步调用发生错误时的事件
   e, AsyncPostBackTimeOut: 异步调用的有效时间 默认为 90秒
   f, AuthenticationService: 用来表示提供验证服务的路径.
   g, ProfileService    表示提供个性化服务的路径
   h, Scripts    对脚本的调用,可以恰套多个ScriptReference摸板对多个脚本文件的调用
   i,  Service   对服务的调用 也可以恰套多个ServiceReference摸板以实现多个服务的引用


---------以下是自己做的例子----------------------------------------------------------------

前台

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <script src="Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>
    <script type="text/javascript">
        function ReferenceServiceMethod1() {
            WebServiceTest.HelloWorld(GetResult);
        }
        function GetResult(result) {
            alert(result);
        }

        function ReferencSercviceMethod2() {
            WebServiceTest.SayHelloWorld(document.getElementById("txtName").value, GetResult);
        }
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <input type="text" id="txtName" />
        <input type="button" value="带参数的web service方法调用" οnclick="ReferencSercviceMethod2()" />
        <input type="button" value="不带参数的web service方法调用" οnclick="ReferenceServiceMethod1()" />
    </div>
    <asp:ScriptManager ID="ScriptManager1" runat="server">
        <Services>
            <asp:ServiceReference Path="WebServiceTest.asmx" />
        </Services>       
    </asp:ScriptManager>
    </form>
</body>
</html>

建立一个WebServiceTest.asmx文件代码为(

app_code下WebServiceTest.asmx.cs

/// <summary>
///WebServiceTest 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
//这句一定要加上
[System.Web.Script.Services.ScriptService]
public class WebServiceTest : System.Web.Services.WebService
{

    public WebServiceTest()
    {

        //如果使用设计的组件,请取消注释以下行 
        //InitializeComponent(); 
    }

    [WebMethod]
    public string HelloWorld()
    {
        return "Hello World";
    }
    [WebMethod]
    public string SayHelloWorld(string name)
    {
        return "Hello World " + name;
    }

over!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值