易截截图软件、单文件、免安装、纯绿色、仅160KB

c#中的Ajax上手篇---非同步请求responseXML

上篇介绍了如何在Ajax客户端与服务器端之间传送简单的文本数据,其实,也可以使用XML作为数据传送、沟通的格式,Ajax客户端若要发送XML,基本上就是将XML作为字符串,在POST请求时发送,例如:
*HelloAjax.js
var xmlHttp;
function createXMLHttpRequest() {
if (window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
}
else if (window.ActiveXObject) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
}
function prepareXML() {
var xml = "<skills>";
var options = document.getElementById("skills").childNodes;
for (var i = 0; i < options.length; i++) {
var option = options[i];
if (option.selected) {
xml = xml + "<skill>" + option.value + "<\/skill>";
}
}
xml = xml + "<\/skills>";
return xml;
}
function handleSkills() {
var xml = prepareXML();
var url = "Handler1.ashx?timeStamp=" + new Date().getTime();
createXMLHttpRequest();
xmlHttp.onreadystatechange = handleStateChange;
xmlHttp.open("POST", url);
xmlHttp.setRequestHeader("Content-Type", "text/xml");
xmlHttp.send(xml);
}

在上例中,将客户端在多选择下拉框中选择的数据,以下列的XML格式发送:
<skills>
<skill>java</skill>
<skill>vb</skill>
<skill>csharp</skill>
</skills>

服务器端采用HttpHandler实现,在服务器端接收到XML之后,针对XML加以剖析,取得每个NODE数据。
并会以另一个XML文件重新发回客户端。
*Hanler1.ashx
using System.Text;
using System.Web;
using System.Xml;
using System.Globalization;
namespace HelloAjax
{
public class Handler1 : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
HttpRequest Request = context.Request;
HttpResponse Response = context.Response;
if (Request.InputStream.Length != 0)


相关文档:

xtree dwr (ajax)异步加载每个树结点的代码

 tree.js
function getRank(rankNum)
{
 var rankName="";
 switch(rankNum)
 {
  case 1:
   {
    rankName="(普通会员)";
    break;
   }
   case 2:
   {
 &n ......

C#读取sqlserver 动画flash swf 文件到本地硬盘

 using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlC ......

C# 读取和写入oracle的blob字段的方法

 //向数据库中写入
        private void button1_Click(object sender, EventArgs e)
        {
            oracleConnection1.Open();
      & ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号