zoukankan      html  css  js  c++  java
  • 原生ajax请求的五个步骤

    //第一步,创建XMLHttpRequest对象
    var xmlHttp = new XMLHttpRequest();
    function CommentAll() {
        //第二步,注册回调函数
        xmlHttp.onreadystatechange =callback1;
        //{
        //    if (xmlHttp.readyState == 4)
        //        if (xmlHttp.status == 200) {
        //            var responseText = xmlHttp.responseText;
    
        //        }
        //}
        //第三步,配置请求信息,open(),get
        //get请求下参数加在url后,.ashx?methodName = GetAllComment&str1=str1&str2=str2
        xmlHttp.open("post", "/ashx/myzhuye/Detail.ashx?methodName=GetAllComment", true);
    
        //post请求下需要配置请求头信息
        //xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    
        //第四步,发送请求,post请求下,要传递的参数放这
        xmlHttp.send("methodName = GetAllComment&str1=str1&str2=str2");//"
    
    }
    //第五步,创建回调函数
    function callback1() {
        if (xmlHttp.readyState == 4)
            if (xmlHttp.status == 200) {
                //取得返回的数据
                var data = xmlHttp.responseText;
                //json字符串转为json格式
                data = eval(data);
                $.each(data,
                    function(i, v) {
                        alert(v);
                    });       
            }
    }
    
    
    
    //后台方法
     private  void GetAllComment(HttpContext context)
            {
    
                //Params可以取得get与post方式传递过来的值。
                string methodName = context.Request.Params["methodName"];
    
                //QueryString只能取得get方式传递过来的值。
                string str1 = context.Request.Form["str1"];
    
                //取得httpRequest传来的值,包括get与post方式
                string str2 = context.Request["str2"];
    
                List<string> comments = new List<string>();
    
                comments.Add(methodName);
    
                comments.Add(str1);
    
                comments.Add(str2);
    
    
                //ajax接受的是json类型,需要把返回的数据转给json格式
                string commentsJson = new JavaScriptSerializer().Serialize(comments);
                context.Response.Write(commentsJson);
            }

    上面是代码,那简单总结下如下,要完整实现一个AJAX异步调用和局部刷新,通常需要以下几个步骤:

          (1)创建XMLHttpRequest对象,也就是创建一个异步调用对象.

          (2)创建一个新的HTTP请求,并指定该HTTP请求的方法、URL及验证信息.

          (3)设置响应HTTP请求状态变化的函数.

          (4)发送HTTP请求.

          (5)获取异步调用返回的数据.

          (6)使用JavaScript和DOM实现局部刷新.

  • 相关阅读:
    如何勾选 servlet如何获取?
    过滤器 如何实现获取不到用户名跳转回登录界面
    验证码
    cookie保存用户名及密码
    游标
    存储过程和自定义函数的区别
    瞎搞
    sql 试图索引
    sql 常用函数
    sql 简单的定义变量 声明 输出
  • 原文地址:https://www.cnblogs.com/LWWTT/p/11084597.html
Copyright © 2011-2022 走看看