加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ScriptManager 控件概述

发布时间:2020-12-16 01:00:04 所属栏目:百科 来源:网络整理
导读:原文http://msdn.microsoft.com/zh-cn/library/bb398863.aspx ScriptManager 控件管理支持 AJAX 的 ASP.NET 网页的客户端脚本。 默认情况下, ScriptManager 控件会向页面注册 Microsoft AJAX Library 的脚本。 这将使客户端脚本能够使用类型系统扩展并支持

原文http://msdn.microsoft.com/zh-cn/library/bb398863.aspx


ScriptManager控件管理支持 AJAX 的 ASP.NET 网页的客户端脚本。默认情况下,ScriptManager控件会向页面注册 Microsoft AJAX Library 的脚本。这将使客户端脚本能够使用类型系统扩展并支持部分页呈现和 Web 服务调用这样的功能。

本主题包含以下各节:

  • 方案

  • 背景

  • 代码示例

  • 类参考

方案

必须在页上使用ScriptManager控件,才能启用下列 ASP.NET 的 Microsoft Ajax 功能:

  • Microsoft AJAX Library 的客户端脚本功能和要发送到浏览器的任何自定义脚本。有关更多信息,请参见使用 Microsoft Ajax Library 创建自定义客户端脚本

  • 部分页呈现,允许单独刷新页面上的区域而无需回发。ASP.NETUpdatePanelUpdateProgressTimer控件需要ScriptManager控件才能支持部分页呈现。

  • Web 服务的 JavaScript 代理类,允许您使用客户端脚本来访问 Web 服务和 ASP.NET 页中特别标记的方法。它通过将 Web 服务和页方法作为强类型对象公开来达到此目的。

  • JavaScript 类,用于访问 ASP.NET 身份验证、配置文件和角色应用程序服务。

背景

当页包含一个或多个UpdatePanel控件时,ScriptManager控件将管理浏览器中的部分页呈现。该控件与页生命周期进行交互,以更新位于UpdatePanel控件内的部分页。有关更多信息,请参见部分页呈现概述

ScriptManager控件的EnablePartialRendering属性确定某个页是否参与部分页更新。默认情况下,EnablePartialRendering属性为true因此,默认情况下,当向页添加ScriptManager控件时,将启用部分页呈现。有关如何将UpdatePanel控件与ScriptManager控件一起使用的信息,请参见UpdatePanel 控件简介创建具有多个 UpdatePanel 控件的简单 ASP.NET 页

处理部分页呈现错误

在部分页呈现期间,可通过执行以下操作来处理错误:

  • 需要设置AllowCustomErrorsRedirect属性。当异步回发过程中发生错误时,此属性将决定如何使用 Web.config 文件的自定义错误部分。

  • 处理ScriptManager控件的AsyncPostBackError事件,该事件在异步回发期间出现页错误时引发。

  • 设置AsyncPostBackErrorMessage属性,该属性是发送到浏览器的错误消息。

使用类型系统扩展

Microsoft AJAX Library 可向 JavaScript 添加类型系统扩展,以提供命名空间、继承、接口、枚举、映射以及字符串和数组的 Helper 函数。这些扩展可以在客户端脚本中提供与 .NET Framework 的功能类似的功能。利用这些功能,可按一种结构化方式编写支持 Ajax 的 ASP.NET 应用程序,这不仅能提高可维护性,还简化了添加功能以及对功能分层的操作。向 ASP.NET 网页添加ScriptManager控件会自动包括类型系统扩展名,以便可以在客户端脚本中使用库。有关更多信息,请参见使用 Microsoft Ajax Library 创建自定义客户端脚本

注册自定义脚本

使用ScriptManager控件可管理您为参与部分页更新的控件创建的资源。这些资源包括脚本、样式、隐藏字段和数组。ScriptManager控件的Scripts集合中针对浏览器中可用的每个脚本包含一个ScriptReference对象。可以以声明方式或编程方式指定脚本。

ScriptManager控件还公开一些注册方法,您可使用这些方法以编程方式管理客户端脚本和隐藏字段。当为支持部分页更新的脚本或隐藏字段注册时,必须调用ScriptManager控件的注册方法。(若要为部分页更新不需要的脚本注册,请使用ClientScriptManager类的方法。)

注意

页上使用ScriptManager控件注册的任何脚本以及所有事件处理脚本必须位于页上的form元素内。否则,将不会注册或执行脚本。

有关ClientScriptManager控件注册方法的列表,请参见使用 Microsoft Ajax Library 创建自定义客户端脚本ClientScriptManager类概述。

注册 Web 服务

若要注册想要从支持 AJAX 的 ASP.NET 页调用的 Web 服务,请通过将该 Web 服务添加到ScriptManager控件的Services集合来注册它。Microsoft Ajax Framework 为Services集合中的每个ServiceReference对象生成一个客户端代理对象。这些代理类及其强类型成员将简化从客户端脚本使用 Web 服务的过程。

可通过编程方式将ServiceReference对象添加到Services集合中,以便在运行时注册 Web 服务。

从客户端脚本使用身份验证、配置文件和角色服务

Microsoft AJAX Library 包含用于从 JavaScript 直接调用 ASP.NET 2.0 Forms 身份验证、配置文件和角色应用程序服务的代理类。如果要使用自定义身份验证服务,则可通过使用ScriptManager控件来为该服务注册。有关更多信息,请参见通过 Microsoft Ajax 使用 Forms 身份验证通过 Microsoft Ajax 使用配置文件信息通过 Microsoft Ajax 使用角色信息

ScriptManagerProxy 类

只能向页添加ScriptManager控件的一个实例。该页可以直接包含该控件,也可以将其间接包含在嵌套的组件中,如用户控件、母版页的内容页或嵌套的母版页。如果页已包含ScriptManager控件,但嵌套的组件或父组件需要ScriptManager控件的其他功能,则该组件可以包含ScriptManagerProxy控件。例如,ScriptManagerProxy控件使您能够添加特定于嵌套的组件的脚本和服务。

代码示例

部分页更新示例 Ajax 应用程序

演练:创建支持 Ajax 的网站

演练:使用客户端脚本全球化日期

使用 Microsoft Ajax Library 创建自定义客户端脚本

Walkthrough: Creating and Using AJAX-Enabled Web Service

UpdatePanel 控件简介

UpdateProgress 控件介绍

演练:Timer 控件简介

动态分配脚本引用

创建扩展程序控件以将客户端行为与 Web 服务器控件关联

向 Web 服务器控件添加客户端功能

创建自定义 AJAX 客户端控件

创建自定义非可视客户端组件

类参考

说明

ScriptManager

一个使脚本资源可用于浏览器的服务器控件,这些资源包括 Microsoft AJAX Library 和启用部分页呈现的功能。

ScriptManagerProxy

一个服务器控件,它使嵌套的组件能够添加脚本和服务引用(如果页已包含ScriptManager控件)。

请参见

概念

ASP.NET 页生命周期概述
部分页呈现概述
ASP.NET AJAX and Web Services

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读