初学ajax(一)

今天听了webcast上苏鹏的关于ajax 的讲座,照着他做了个例子,虽然简单,但也初步了解了一下ajax的异步存取的功能。把代码粘出来。

1.htm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
  <script type="text/javascript">
  
  var XmlHttp=new ActiveXObject("Microsoft.XMLhttp");//这里没有判断浏览器的类型,只针对IE了,
  function sendAJAX()
  {

//最后一个参数,true表示异步,false表示同步
//参考http://www.xmlhttp.cn/manual/open.html
   XmlHttp.Open("post","Default.aspx",false); 
//onreadystatechange属性表示当onreadystate变化的时候调用哪个事件,好像必须放在XmlHttp.Open和XmlHttp.Send语句中间,
   XmlHttp.onreadystatechange=ServerProcess;

   XmlHttp.send(null);   
  }
  function ServerProcess()
{
/*
readystate有以下几种状态,参考:http://www.xmlhttp.cn/manual/readystate.html

0 (未初始化)对象已建立,但是尚未初始化(尚未调用open方法)
1 (初始化)对象已建立,尚未调用send方法
2 (发送数据)send方法已调用,但是当前的状态及http头未知
3 (数据传送中)已接收部分数据,因为响应及http头不全,这时通过responseBody和responseText获取部分数据会出现错误,
4 (完成)数据接收完毕,此时可以通过通过responseBody和responseText获取完整的回应数据


*/
   if (XmlHttp.readystate==4 || XmlHttp.readystate=='complete')
   {
    document.getElementById('nameList').innerHTML =XmlHttp.responsetext;
    
   }
  }
  
  setInterval('sendAJAX()',1000);
  
  </script>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
</head>

<body onLoad="sendAJAX();">
  <div id="nameList"></div>
</body>
</html>

下面的.net页面就没什么了
Default.aspx
<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!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>
</head>
<body>
    <form id="form1" runat="server">
    <div>
   
    </div>
    </form>
</body>
</html>

Default.aspx.cs

using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Diagnostics;
public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
          PerformanceCounter myMemory = new PerformanceCounter();
        myMemory.CategoryName = "Memory";//CategoryName 的几种类型可以看msdn
        myMemory.CounterName = "Available KBytes";

        string txtResult = "-->当前可用内存:" + myMemory.NextValue().ToString() + "KB";
        Response.Write(DateTime.Now.ToLongTimeString() + txtResult);
    }
}

就这了,很简单,

还可以实现页面上实时显示时间把下面这句
   XmlHttp.Open("post","Default.aspx",false); 
改成
   XmlHttp.Open("post","2.asp",false); 

2.asp

<%=now%>

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值