浅谈ScriptManager与ClientScriptManager的区别



UpdatePanel 控件启用的部分页面更新。此外,通过 ScriptManager 控件注册 Web 服务,提供从脚本访问 Web 服务方法的权限。
  • 通过向  ScriptReference 控件的  ScriptManager 控件注册可实现  IScriptControl 接口的服务器控件,以便呈现客户端组件和行为所需的脚本。

    将 ScriptManager 控件与母版页、用户控件及其他子组件一起使用

    一个页面在其层次结构中只能包含一个  ScriptManager 控件时为嵌套页面、用户控件或组件注册服务和脚本,请使用 ScriptManager 控件可注册随后将作为页面一部分呈现的脚本。 UpdatePanel 控件兼容的注册方法。
  • 注册可实现用来定义  Sys.Component 客户端对象的  ScriptManager 控件呈现支持该客户端对象的脚本。
    IExtenderControl 接口的服务器控件。 UpdatePanel 控件兼容的脚本文件。这些方法与  UpdatePanel 控件中使用而呈现脚本,则应确保调用  RegisterArrayDeclaration
    在 JavaScript 数组中添加值。如果该数组不存在,则创建它。
    <span sdata="cer" target="M" :system.web.ui.scriptmanager.registerclientscriptblock(system.web.ui.control,system.type,system.string,system.string,system.boolean)"=""> RegisterClientScriptBlock
    在页面的  <form> 开始标记之后呈现一个  script 元素。该脚本被指定为字符串参数。
    <span sdata="cer" target="M" :system.web.ui.scriptmanager.registerclientscriptinclude(system.web.ui.control,system.type,system.string,system.string)"=""> RegisterClientScriptInclude
    在页面的  <form> 开始标记之后呈现一个  script 元素。通过将  src 属性设置为指向脚本文件的 URL 来指定脚本内容。
    <span sdata="cer" target="M" :system.web.ui.scriptmanager.registerclientscriptresource(system.web.ui.control,system.type,system.string)"=""> RegisterClientScriptResource
    在页面的  <form> 开始标记之后呈现一个  script 元素。脚本内容是使用程序集中的资源名称指定的。通过调用从程序集中检索命名脚本的 HTTP 处理程序,来使用 URL 自动填充  src 属性。
    呈现隐藏字段。
    在页面的  </form> 结束标记之前呈现启动脚本块。要呈现的脚本被指定为字符串参数。
    在注册方法时,可为该脚本指定类型/键对。如果已注册了一个包含相同类型/键对的脚本,则不会注册新的脚本。同样,如果所注册脚本的类型/资源名称对已存在,则不会再添加引用该资源的  script 元素。如果注册一个以前注册的属性的 expando 属性,则会引发异常。允许重复注册数组值。
    在调用  RegisterClientScriptResource 方法时,应避免注册执行内联函数的脚本。相反,应注册包含函数定义(如事件处理程序)或应用程序的自定义类定义的脚本。
    UpdatePanel 控件的注册方法
    将控件注册为异步回发的触发器。
    为  UpdatePanel 控件时会执行该脚本。该释放方法用于作为 Microsoft AJAX Library 的一部分且必须在不再使用组件时释放资源的客户端组件。
    UpdatePanel 控件内以其他方式执行异步回发的控件。

    本地化

    EnableScriptLocalization 属性设置为  true 时, ScriptManager 控件可为使用本地化资源提供下列功能:
    • 嵌入到程序集中的脚本文件NeutralResourcesLanguageAttribute 程序集属性、打包在程序集中的资源以及浏览器的 UI 区域性(如果有)。
    • 独立脚本文件ScriptReference 对象的  ScriptManager 控件试图呈现包含调试信息的区域性特定的脚本文件。例如,如果页面处于调试模式且当前区域性设置为 en-MX,则该控件会呈现一个其名称如  scriptname.en-MX.debug.js 这样的脚本文件(如果该文件存在)。如果该文件不存在,则呈现适当回退区域性的调试文件。
    有关如何本地化资源的更多信息,请参见 组件库资源本地化概述

    ClientScriptManager 类用于管理客户端脚本并将它们添加到 Web 应用程序中。可以从 Page 对象的 ClientScript 属性获取对 ClientScriptManager 类的引用。Note注意

    脚本回调不能在不支持文档对象模型 (DOM) 的较早浏览器中使用,并要求客户端启用 ECMAScript。若要检查客户端的浏览器是否支持回调,请使用 SupportsCallback 属性,该属性可以通过 ASP.NET  Request 内部对象的  Browser 属性访问。
    使用  GetPostBackEventReference 方法和  GetPostBackClientHyperlink 方法定义客户端回发事件。这些方法启用客户端脚本函数,在调用这些函数时,它们将促使服务器向该页回发。客户端回发与客户端回调的区别在于网页处理客户端回发事件要用完一个正常的生命周期。
    Note
    <th align="left" style="padding: 10px 11px 1px; border: 0px hidden rgb(187, 187, 187); border-image: none; height: 21px; text-align: left; font-family:; background-color: rgb(252, 254, 197);" segoe="" ui',="" verdana,="" arial;="" normal;="" 1.1666em;="" bold;="" rgb(0,="" 0,="" 0);="" collapse;="" 0px;="">注意
    如果您在使用  Button 控件且  UseSubmitBehavior 属性设置为  false,则可以使用  GetPostBackEventReference 方法返回  Button 控件的客户端回发事件。
    可以使用  Button 控件、 ImageButton 控件和  LinkButton 控件的  OnClientClick 属性来运行客户端脚本。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值