ajax

 

在搞清楚了XMLHttpRequest的这些基本属性方法以后,我们就可以开始编写我们的第一个Ajax程序了。我们准备通过点击一个按钮然后通过Ajax的方式到服务端取回一个Hello world!的字符串显示在界面的一个文本框里。

我们在一个配置好的站点工程里面新建一个名为AjaxTest.aspx页面。首先我们在cs文件中的page_load事件函数中写下如下代码:

AjaxTest.aspx.cs:

    protected void Page_Load(object sender, EventArgs e)

    {

        if (Request.QueryString["s"] == "1")//使用查询字串来指示这个请求是通过Ajax发出的

        {

            Response.Write("hello world!");//向HttpResponse中输出hello world!

            Response.End();//将页面缓冲发送向客户端浏览器 并中止该页输出

                           //如果去掉这句 会得到多余的HTML代码

        }

    }

相对来说,我们在前台页面中书写的代码将会多一些,慢慢地你会发现这也许是Ajax的一个惯例:

AjaxTest.aspx:

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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head runat="server">

    <title>测试</title>

    <script language="javascript" type="text/javascript">

    <!--

    function GetInfo(){//我们就是通过这个函数来异步获取信息的

        var xmlHttpReq = null;//声明一个空对象用来装入XMLHttpRequest

        if (window.XMLHttpRequest){//除IE5 IE6 以外的浏览器XMLHttpRequest是window的子对象

            xmlHttpReq = new XMLHttpRequest();//我们通常采用这种方式实例化一个XMLHttpRequest

        }

        else if (window.ActiveXObject){//IE5 IE6是以ActiveXObject的方式引入XMLHttpRequest的

            xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");

                                            //IE5 IE6是通过这种方式

        }

        if(xmlHttpReq != null){//如果对象实例化成功 我们就可以干活啦

            xmlHttpReq.open("get","AjaxTest.aspx?s=1",true);

                                           //调用open()方法并采用异步方式

            xmlHttpReq.onreadystatechange=RequestCallBack; //设置回调函数

            xmlHttpReq.send(null);//因为使用get方式提交,所以可以使用null参调用

        }

        function RequestCallBack(){//一旦readyState值改变,将会调用这个函数

            if(xmlHttpReq.readyState == 4)

            {

                document.getElementById("iptText").value = xmlHttpReq.responseText;

                //将xmlHttpReq.responseText的值赋给iptText控件

            }

        }

    }

    -->

    </script>

</head>

<body>

    <form id="form1" runat="server">

        <div>

            <input id="iptText" type="text" value="" />

            <input type="button" id="" value="Ajax提交" οnclick="GetInfo();" />

            <!--点击这个按钮调用-->

        </div>

    </form>

</body>

</html>

如果你在点击按钮的瞬间发现文本框内闪电般地出现了 “Hello world!”,那么恭喜你,你已经完成了一个Ajax调用。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值