• XMLHttpRequest+WebForm模式(接口IHttpHandler)实现ajax


    首先引入ajax.js文件 创建xmlhttpRequest对象

    Code


    //HTTP 处理程序
       IHttpHandler 接口:定义 ASP.NET 为使用自定义 HTTP 处理程序同步处理 HTTP Web 请求而实现的协定。
    如果您的处理程序将访问会话状态值,它必须实现 IRequiresSessionState 接口(不包含任何方法的标记接口)。 
    创建自定义 HTTP 处理程序

    若要创建自定义 HTTP 处理程序,请创建实现 IHttpHandler 接口的类来创建一个同步处理程序。或者,可以实现 IHttpAsyncHandler 来创建一个异步处理程序。两种处理程序接口都要求您实现 IsReusable 属性和 ProcessRequest 方法。 IsReusable 属性指定 IHttpHandlerFactory 对象(实际调用适当处理程序的对象)是否可以将处理程序放置在池中,并且重新使用它以提高性能。如果处理程序不能放在池中,则在每次需要处理程序时工厂都必须创建处理程序的新实例。

    ProcessRequest 方法负责处理单个 HTTP 请求。在此方法中,将编写生成处理程序输出的代码。

    HTTP 处理程序有权访问应用程序上下文。其中包括请求用户的标识(如果已知)、应用程序状态和会话信息。当请求 HTTP 处理程序时,ASP.NET 将调用相应处理程序的 ProcessRequest 方法。您在处理程序的 ProcessRequest 方法中编写的代码将创建一个响应,此响应随后发送回请求浏览器。

    Code

    前台页面:

     

    Code

    或者通过客户端向另一个页面传递参数,由该页面处理数据,把结果输出到http流中 
     apsx.cs页面
       public partial class AjaxForm : System.Web.UI.Page
        {
            protected void Page_Load(object sender, EventArgs e)
            {
                if (!IsPostBack)
                {
                    string name = Request.QueryString["name"];
                    Response.Write(name.ToUpper());
                    Response.Flush();
                    Response.End();
                }
            }
        }

    //xmlhttpRequest对象
       //发起异步请求
    function sendRequest(){
        newXMLHttpRequest();
        var url="AjaxForm.aspx?name="+document.getElementById("txtName").value;
       xmlHttp.open("GET",url,true);
        xmlHttp.onreadystatechange=onSuccessCallBack;
        xmlHttp.send(null);
    }

  • 相关阅读:
    乐器、音乐与声学
    函数的功能与坐标轴的理解
    函数的功能与坐标轴的理解
    波、波长与频率
    波、波长与频率
    长方体的研究
    彻底理解线索二叉树
    SSH框架总结(框架分析+环境搭建+实例源代码下载)
    深入浅出WPF 第一部分(3)
    iPad 3g版完美实现打电话功能(phoneitipad破解)
  • 原文地址:https://www.cnblogs.com/hubcarl/p/1567251.html
Copyright © 2020-2023  润新知