技术开发 频道

xmlHTTP xmlDOC 与 C#中DataSet的结合 实现AJAX简单示例


【IT168技术文档】

  本例包括
  1.客户端用xmlHTTP 向服务器页面发送请求
  2.服务器页面后台用C#中DataSet实现数据库的操作 并得到结果
  3.客户端用xmlDOC 得到xmlHTTP返回的结果 并对结果进行操作

  附录
  XMLHTTP的常用方法和属性
  XMLDOC的常用方法和属性
========================= 发送xmlHttp请求到服务器端 ========================= var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); xmlhttp.open("GET","Default2.aspx",false,"",""); xmlhttp.send(); ====================== 服务器端的相关数据处理 ======================
protected void Page_Load(object sender, EventArgs e) { //连接数据库 SqlConnection myConn = new SqlConnection("Data Source=192.168.0.36;Initial Catalog=Northwind;User ID=sa;Password=sa"); SqlDataAdapter myda = new SqlDataAdapter("select top 5 * from orders", myConn); DataSet myds = new DataSet(); myConn.Open(); myda.Fill(myds); myConn.Close(); // 把xml对象发送给客户端 Response.ContentType = "text/xml"; Response.Write(myds.GetXml()); Response.End(); } ============================================= xmlDOC 得到xmlHTTP返回的结果 并对结果进行操作 ============================================= // 从服务器得到处理后的xml对象 var xmldom = new ActiveXObject("Microsoft.XMLDOM"); xmlhttp.responseXML.createProcessingInstruction("xml"," version=\"1.0\" encoding=\"gb2312\""); xmldom = xmlhttp.responseXML.documentElement; //alert(xmldom.xml); // 通过xmldom操作结果 var length = xmldom.getElementsByTagName("OrderID").length; alert(length);
  以下内容 摘录于网上 对原作者的用心整理和无私分享表示感谢
  ========
  XMLHTTP
  ========
  Open方法
  包含了5个参数,前三个是必要的,
  后两个是可选的(在服务器需要进行身份验证时提供)。
  参数的含义如下所示:
  http-method: HTTP的通信方式,比如GET或是 POST
  url: 接收XML数据的服务器的URL地址。通常在URL中要指明 ASP或CGI程序
  async: 一个布尔标识,说明请求是否为异步的。
  如果是异步通信方式(true),客户机就不等待服务器的响应;
  如果是同步方式(false),客户机就要等到服务器返回消息后才去执行其他操作
  userID 用户ID,用于服务器身份验证
  password 用户密码,用于服务器身份验证

  用Open方法对Request对象进行初始化后,调用Send方法发送XML数据

  Send方法
  参数类型是Variant,可以是字符串、DOM树或任意数据流。
  发送数据的方式分为同步和异步两种。
  在异步方式下,数据包一旦发送完毕,就结束Send进程,客户机执行其他的操作;
  而在同步方式下,客户机要等到服务器返回确认消息后才结束Send进程。

  XMLHTTP对象中的readyState属性
  能够反映出服务器在处理请求时的进展状况。
  客户机的程序可以根据这个状态信息设置相应的事件处理方法。
值 说明
  0 Response对象已经创建,但XML文档上载过程尚未结束
  1 XML文档已经装载完毕
  2 XML文档已经装载完毕,正在处理中
  3 部分XML文档已经解析
  4 文档已经解析完毕,客户端可以接受返回消息

  客户机接收响应是通过XMLHTTP对象的属性实现
  responseText:将返回消息作为文本字符串;
  responseBody:将返回消息作为HTML文档内容;
  responseXML:将返回消息视为XML文档,在服务器响应消息中含有XML数据时使用;
  responseStream:将返回消息视为Stream对象
0
相关文章