AJAX原始对象的使用(XMLHttpRequest+javascript+asp.net)

文章摘自:http://blog.csdn.net/jiben2qingshan/article/details/17251205

什么是AJAX

AJAX是一个结合体,通过整合旧的技术,实现的的一种新思想,AJAX = 异步 + javascript + xml。

传统方式Web应用和AJAX方式Web应用的比较

传统方式

页面为全页面刷新;同步响应,用户体验会中断;页面交互为主导;主要代码工作是服务器端

AJAX方式

页面为局部刷新;异步响应方式,用户体现连贯;数据交互为主导;页面端需要更多的代码工作

浏览器进行传统方式和AJAX方式交互的大致流程


浏览器之所以可以进行AJAX方式交互,是因为浏览器有AJAX引擎,在具体编程中的体现是有了XMLHttpRequest对象。

XMLHttpRequest对象

XMLHttpRequest对象是编程中处于最底部的对象,通过JavaScript脚本我们可以操作,当然,为了方便使用,人们已经将XMLHttpRequest对象封装到JQuery中了。本篇博客不说(之后会说)JQuery的方式。

XMLHttpRequest对象的使用

XMLHttpRequest对象是最原始的对象,早期浏览器对其的支持也是不尽相同,如:早期的IE浏览器,通过ActiveX控件名进行创建和使用,更头疼的是,在那个时期,不同版本IE的ActiveX控件名称也是不同的,这个在当时对于浏览器兼容方面造成了一定的麻烦(现在我们可以使用JQuery避免这些麻烦)。

XMLHttpRequest对象的实例

下面的实例基于C#语言,运用asp.net在2010 VS 环境下做的。

A.aspx(A.aspx.cs中没有写代码)


<%@ Page Language="C#" AutoEventWireup="true" CodeFile="A.aspx.cs" Inherits="AJAX_A" %>




    
        传送数据
        
    
    
        
        
        

B.aspx.cs代码(b.aspx中没有写相应的代码)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class AJAX_B : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        //获取请求的参数Get方式
        if (!String.IsNullOrEmpty(Request.QueryString["name"])){
            string resultType = Request.QueryString["name"].ToLower() == "html" ? "html" : "json";
            string html = GetResult(resultType);
            //清空缓冲区
            Response.Clear();
            //将字符串写入响应输出流
            Response.Write(html);
            //将当前所有缓冲的输出发送的客户端,并停止该页执行
            Response.End();
        }
        //post方式:Request.Form["name"].toString()获得数据        
    }

    //自定义返回数据函数
    public string GetResult(string resultType){
        string result="";
        if(resultType == "html"){
            //返回的html
            result = "
  • 北京
  • 天津
"; } else if(resultType == "json"){ //返回的json数据 result = ""; } return result; } }

你可能感兴趣的:(AJAX原始对象的使用(XMLHttpRequest+javascript+asp.net))