`
un268un
  • 浏览: 11573 次
社区版块
存档分类
最新评论

net 2.0下的asp.net ajax基本使用方法 (备忘)

 
阅读更多

  asp.net ajax中用到了几个dll文件,这些可以从网上下载。http://ajax.asp.net站点下可以找到相关的下载。这其中包括:System.Web.Extensions.dll、System.Web.Extensions.Design.dll、AjaxControlkit.dll、AjaxExtensionsToolBox.dll、Microsoft.Web.Preview.dll。其中,System.Web.Extensions.dll与AjaxControlKit.dll这两个组件是最重要的。在将这些组件下载到本地之后,需要将其引入到所需要的项目中。
  System.Web.Extensions.dll中所包含的控件:
  ●ScriptManager
  ● ScriptManagerProxy
  ●Timer
  ●UpdatePanel
  ●UpdateProgress
  AjaxControlToolkit.dll中所包含的控件(扩展了现有的一些控件,同时提供了一些独立的Ajax控件):
  ● Accordion
  ● AccordionPane
  ●AlwaysVisibleControlExtender
  ●AnimationExtender
  ●AutoCompleteExtender
  ●CalendarExtender
  ●CascadingDropDown
  ●CollapsiblePanelExtender
  ●ConfirmButtonExtender
  ●DragPanelExtender
  ●DropDownExtender
  ●DropShadowExtender
  ●DynamicPopulateExtender
  ●FilteredTextBoxExtender
  ●HoverMenuExtender
  ●ListSearchExtender
  ●MaskedEditExtneder
  ●MaskedEditValidator
  ●ModalPopupExtender
  ●MutuallyExclusiveCheckBoxExtender
  ●NoBot
  ●NumericUpDownExtender
  ●PaginBulletedListExtender
  ●PasswordStrength
  ●PopupControlExtender
  ●Rating
  ●ReorderList
  ●ResizableControlExtender
  ●RoundedCornersExtender
  ●SliderExtender
  ●SlideShowExtender
  ●TabContainer
  ●TextBoxWatermarkExtender
  ●ToggleButtonExtender
  ●ToolkitScriptManager
  ●UpdatePanelAnimationExtender
  ●ValidatorCalloutExtender
  二、web.config文件配置
  在项目中引用了asp.net ajax组件后,还需要对项目的web.config文件进行配置。web.config文件的配置,请参见:
  
  "Asp.Net 配置"选项。
  设置和注释的完整列表在
  machine.config.comments 中,该文件通常位于
  \Windows\Microsoft.Net\Framework\v2.x\Config 中
  -->
     
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
   节可以配置 ASP.NET 使用的
  安全身份验证模式,
  以标识传入的用户。
  -->
  
   节可以配置相应的处理步骤。具体说来,
  开发人员通过该节可以配置
  要显示的 html 错误页
  以代替错误堆栈跟踪。
  
  
  
  
  -->
  
  
  
  
  
  
  
  
  
  
  
        
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  三、调用服务器端方法
  (1)调用没有参数的服务器端方法
  
  
  
  
  [System.Web.Services.WebMethod]
  publicstaticstring ServerDate()
  {
  returnDateTime.Now.ToShortDateString();
  }
  
  
  
  asp.net ajax调用服务器方法
  
  
  
  
  
  
  
  function GetServerDate()
  {
  Loading();
  PageMethods.ServerDate(OnSuccess);
  }
  function Loading()
  {
  document.getElementById("ServerDate").innerText="Loading";
  }
  function OnSuccess(Message)
  {              document.getElementById("ServerDate").innerText=Message;          }                                 (2)调用需要参数的服务器方法
  
  
  
  
  [System.Web.Services.WebMethod]
  publicstaticstring ServerDate()
  {
  returnDateTime.Now.ToShortDateString();
  }
  [System.Web.Services.WebMethod]
  publicstaticString YourName( string firstName , string lastName )
  {
  return firstName + " " + lastName;
  }
  
  
  
  asp.net ajax调用服务器方法
  
  
  
  
  
  
  
  function GetServer(firstName, lastName) {
  Loading();
  if (arguments.length != 2) {
  PageMethods.ServerDate(OnSuccess);
  }
  else {
  PageMethods.YourName(firstName, lastName, OnSuccess); //调用带有参数的服务器方法
  }
  }
  function Loading() {
  document.getElementById("ServerDate").innerText = "Loading";
  }
  function OnSuccess(Message) {
  document.getElementById("ServerDate").innerText = Message;
  }
  
  
  
  
  
  
  
  
  说明:
  (a)需要调用的服务器端方法必须以System.Web.Services.WebMethod特性进行标记
  (b)需要调用的服务器端方法必须为公共静态方法      (c)需要调用的服务器端方法应写在.aspx页面(或对应的后台代码文件)中,不应写在用户控件中
  (3)调用WebService
  
  
  
  
  
  asp.net ajax调用WebService
  
  
  
  
  
  
  
  
  
  
  
  function GetMachineName(IsUTC) {
  Loading();
  Ajax_Test.sample.ServerMachineName(OnSucess);
  //Ajax_test为WebService的名命空间
  //sample为类名
  //ServerMachineName为所要调用的方法的名称
  }
  function Loading() {
  document.getElementById("ServerMachineName").innerText = "正在与服务器进行交互...";
  }
  function OnSucess(ServerMachineName) {
  document.getElementById("ServerMachineName").innerText = ServerMachineName;
  }
  
  
  
  
  
  
  (4)关于错误处理
  在调用服务端方法或WebService时,服务器端可能会发生异常!在客户端,这些异常分为服务器错误与服务器超时。
  (a)服务器错误
  
  
  
        [System.Web.Services.WebMethod]      publicstaticfloat ServerDate(int x, int y)      {          return x / y;      }         asp.net ajax调用服务器方法
  
  
  
  
  
  
  
  function GetServer(x, y) {
  Loading();
  //OnSuccess与OnError是两个回调函数
  //OnSuccess表示当调用成功所要执行的回调函数
  //OnError表示当调用不成功时所要执行的加调函数
  PageMethods.ServerDate(x, y, OnSuccess, OnError);
  }
  function Loading() {
  document.getElementById("ServerDate").innerText = "Loading";
  }
  //调用成功时的回调函数
  function OnSuccess(Message) {
  document.getElementById("ServerDate").innerText = Message;
  }
  //发生错误时的回调函数,如果所调用的服务器方法在调用时发生错误,会有一个error对象被返回
  //这个对象就是客户端的Sys.Net.WebServiceError对象
  function OnError(ErrorHander) {
  document.getElementById("ServerDate").innerText = '服务器发生错误!';
  var ErrorMessage = '是否超时' + ErrorHander.get_timedOut() + '\n错误信息为:' + ErrorHander.get_message() + '\n异常名称为:' + ErrorHander.get_exceptionType() + '\n错误位置为:' + ErrorHander.get_stackTrace();
  alert(ErrorMessage);
  }
  
  
  
  
  
  
  
  说明:当服务器发生错误时,会为客户端返回一个异常实例,该异常类型为Sys.Net.WebServiceError。该类包含以下几个属性:
  ●timedOut:布尔值,表示服务器是否超时
  ●message:异常信息描述
  ●exceptionType:服务器端异常的类型名称
  ●stackTrace:异常位置
  (b)服务器超时
  
  
  
  
  [System.Web.Services.WebMethod]
  publicstaticfloat ServerDate(int x, int y)
  {
  return x / y;      }      [System.Web.Services.WebMethod]      publicstaticfloat TimeOutTest()      {          //方法会延迟十秒
  System.Threading.Thread.Sleep(10000);
  return 0;
  }
  
         asp.net ajax调用服务器方法
  
  
  
  
  
  
  
  function GetServer() {
  Loading();
  //设置超时时间
  PageMethods.set_timeout(2000);
  //OnSuccess与OnError是两个回调函数
  //OnSuccess表示当调用成功所要执行的回调函数
  //OnError表示当调用不成功时所要执行的加调函数
  PageMethods.TimeOutTest(OnSuccess, OnError);
  }
  function Loading() {
  document.getElementById("ServerDate").innerText = "Loading";
  }
  //调用成功时的回调函数
  function OnSuccess(Message) {
  document.getElementById("ServerDate").innerText = Message;
  }
  //发生错误时的回调函数,如果所调用的服务器方法在调用时发生错误,会有一个error对象被返回
  //这个对象就是客户端的Sys.Net.WebServiceError对象
  function OnError(ErrorHander) {
  document.getElementById("ServerDate").innerText = '服务器发生错误!';
  var ErrorMessage = '是否超时' + ErrorHander.get_timedOut() + '\n错误信息为:' + ErrorHander.get_message() + '\n异常名称为:' + ErrorHander.get_exceptionType() + '\n错误位置为:' + ErrorHander.get_stackTrace();
  alert(ErrorMessage);
  }
  
  
  
  
  
  
  
分享到:
评论

相关推荐

    ASP.NET AJAX程序设计——第I卷:服务器端ASP.NET 2.0 AJAX Extensions与ASP.NET AJAX Control Toolkit 源代码

    本卷从最易于理解和使用的那部分入手,介绍ASP.NET AJAX框架中能够与传统ASP.NET无缝对接的服务器端部分,包括服务器端ASP.NET AJAX Extensions与ASP.NET AJAX Control Toolkit。这部分内容不需要读者有任何的客户端...

    ASP.NET 2.0 Ajax程序设计——第II卷书中代码2

    还介绍了ASP.NET AJAX 框架为开发者在客户端用JavaScript 与服务器端通信而创造的种种便利条件,包括直接调用Web Service、页面方法以及ASP.NET 应用服务(例如身份验证、用户个性化以及全球化服务)等。ASP.NET ...

    ASP.NET AJAX程序设计——第I卷:服务器端ASP.NET 2.0 AJAX Extensions与ASP.NET AJAX Control Toolkit

    ASP.NET AJAX

    ASP.NET2.0 AJAX

    ASP.NET2.0 AJAX包括:ASP.NET 2.0 AJAX Extensions和ASP.NET Futures CTP.放心下载可用! 支持vs2005sp1!不要用vs2005的哟!否则web.config中会出现错误的!

    ASP.NET AJAX程序设计——第I卷:服务器端ASP.NET 2.0 AJAX 书中代码2

    本卷从最易于理解和使用的那部分入手,介绍ASP.NET AJAX框架中能够与传统ASP.NET无缝对接的服务器端部分,包括服务器端ASP.NET AJAX Extensions与ASP.NET AJAX Control Toolkit。这部分内容不需要读者有任何的客户端...

    ASP.NET AJAX程序设计——第I卷:服务器端ASP.NET 2.0 AJAX 书中代码4

    本卷从最易于理解和使用的那部分入手,介绍ASP.NET AJAX框架中能够与传统ASP.NET无缝对接的服务器端部分,包括服务器端ASP.NET AJAX Extensions与ASP.NET AJAX Control Toolkit。这部分内容不需要读者有任何的客户端...

    ASP.NET 2.0应用程序添加ASP.NET AJAX 组件引用之web.config配置

    在探讨如何将ASP.NET AJAX组件引用到ASP.NET 2.0应用程序中,并通过web.config进行配置之前,我们先简要回顾一下ASP.NET AJAX的历史背景及其重要性。ASP.NET AJAX是微软于2007年发布的一套框架,旨在增强Web应用的...

    完全手册ASP.NET AJAX实用开发详解 源码

    本书从易到难、由浅入深、循序渐进系统地介绍了ASP.NET AJAX(C#)知识点和基于... 本书不仅适合初学ASP.NET AJAX网络应用程序的开发人员,对具有一定ASP.NET 2.0网络应用程序开发经验的开发人员,也会有有益的帮助。

    ASP.NET2.0 AJAX开发组件包

    Validators.zip是在Bet1a,Beta2,RC中自带但在Relase中被移到ASP.NET 2.0补丁包中的AJAX兼容性Validators控件库,在新的ASP.NET2.0补丁包安装之前可以先用此库代替。具体用法祥见Scott老大的Blog ...

    Microsoft Ajax For asp.net2.0

    【Microsoft Ajax for ASP.NET 2.0】是一个关键的技术组件,它为开发人员提供了一种在Web应用程序中实现异步交互的能力。这个技术是.NET Framework 2.0的一部分,允许开发者构建更动态、响应更快的网页,提升用户...

    Web2.0——Asp.NET_Ajax技术详解与典型应用.rar

    Asp.NET AJAX(Asynchronous JavaScript and XML)是微软在Web2.0时代推出的一项核心技术,它使得Web应用程序能够实现部分页面刷新,提高了用户体验,降低了服务器负载。本资源包含的"Web2.0——Asp.NET_Ajax技术...

    ASP.NET AJAX编程参考手册代码_涵盖ASP.NET 3.5及2.0的程序代码

    5. **Web服务和Page Methods**:ASP.NET AJAX支持直接调用Web服务(ASMX)或Page Methods(页面上的静态方法),以便在客户端和服务器之间进行数据交换。 6. **AJAX扩展控件**:如Accordion、Calendar、Slider等,...

    完全手册:ASP.net.Ajax电子教程

    - **Web Services和Page Methods**:为了支持AJAX调用,ASP.NET提供了Web Services和Page Methods两种方式,允许客户端直接与服务器端方法交互。 **4. ASP.NET AJAX控件工具箱** - **ASP.NET AJAX Control Toolkit...

    asp.net AJAX安装组件

    Validators.zip是在Bet1a,Beta2,RC中自带但在Relase中被移到ASP.NET 2.0补丁包中的AJAX兼容性Validators控件库,在新的ASP.NET2.0补丁包安装之前可以先用此库代替。具体用法祥见Scott老大的Blog ...

    ASP.NET2.0 Ajax组件DEMO(asp.net超级完整,中文版)

    在这个"ASP.NET2.0 Ajax组件DEMO"中,我们重点关注的是使用Ajax技术来提升用户体验的部分。Ajax,即Asynchronous JavaScript and XML,是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术,它可以实现...

    asp.net ajax 安装包

    1. **ASP.NET AJAX Extensions**:这是ASP.NET AJAX的核心部分,它扩展了.NET Framework 2.0的功能,引入了UpdatePanel、ScriptManager等控件,使得开发者可以在服务器端代码中方便地实现页面的部分更新,而无需进行...

    ASP.net Ajax2.0安装包

    ASP.NET AJAX 2.0是微软为Web开发人员提供的一套强大的工具,它极大地提升了ASP.NET应用程序的用户体验,通过引入异步更新技术,使得页面在无需完全刷新的情况下也能实现部分内容的动态更新。这个安装包包含了ASP...

    ASP.NET AJAX入门系列教程

    Atlas是一个新的Web技术开发包,它集成了一套非常大的客户端脚本库使得与功能丰富的、基于服务器开发平台的 ASP.NET2.0结合在一起,”Atlas”能让你开发的Web应用能够通过直接调用Web服务器来更新一个Web页面的数据...

    Microsoft ASP.NET 2.0 AJAX Extensions 1.0

    **ASP.NET 2.0 AJAX Extensions 1.0** ASP.NET 2.0 AJAX Extensions是微软为.NET Framework 2.0引入的一个重要组件,旨在增强Web应用程序的用户体验,通过实现部分页面更新(Partial Page Rendering)和异步交互,...

    Microsoft ASP.NET 2.0 AJAX Extensions 1.0.zip

    主要用来解决:Parser Error Message: Could not load file or assembly 'System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies....

Global site tag (gtag.js) - Google Analytics