ASP.NET做无刷新获取数据的思路及实现代码

1.从远端后台获取一段文本

javascript代码:

function GetData(str)
{
    var oHttpReq = new ActiveXObject("MSXML2.XMLHTTP");
    oHttpReq.open("POST","NotRefreshServer.aspx",false);//NotRefreshServer.aspx用于向客户端输出数据
    oHttpReq.send();
    var result = oHttpReq.responseText
   dialog.innerHTML = dialog.innerHTML + result;//dialog是用与显示数据的客户端控件
}

CS代码:

string strPutput = @"PP说:你们好吗?你們好嗎?<BR>";
Response.Buffer = true;
Response.Clear();
Response.ClearContent();
Response.ClearHeaders();
Response.ContentType = "text/html";
Response.Charset = "utf-8";
Response.Write(strPutput);
Response.Flush();
Response.Close();

将这段代码放到NotRefreshServer.aspx页面的后台Page_Load事件中,那么在客户端的result将接收到"PP说:你们好吗?你們好嗎?<BR>"的代码.

2.获取远端XML数据集

以上是从远端后台获取一段文本,要获取远端XML数据集的话,则用以下代码:

假设有一个XML文件,起内容如下:

<AA>
 <A>
  <B>B1</B>
 </A>
 <A>
  <B>B2</B>
 </A>
 <A>
  <B>B3</B>
 </A>
</AA>

javascript代码:

function GetData(str)
{
    var oHttpReq = new ActiveXObject("MSXML2.XMLHTTP");
    oHttpReq.open("POST","NotRefreshServer.aspx",false);//NotRefreshServer.aspx用于向客户端输出数据
    oHttpReq.send();
    var result = oHttpReq.responseText;
    var oDoc = new ActiveXObject("MSXML2.DOMDocument");
    oDoc.loadXML(result);
    items1 = oDoc.selectNodes("//AA/A/B");
    for(var i=0;i<items1.length;i++)
    {
       //items1[i].text即可得到数据如"B1","B2"等内容,并在此进行处理..........
    }
}

CS代码:

string strPathFile = "XXX";//XML文件的相对路径
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(strPathFile);
XmlTextWriter xtw = new XmlTextWriter(Response.OutputStream,Response.ContentEncoding);
xmlDoc.WriteTo(xtw);//如果要从数据库获取数据用ds.WriteXml(xtw);ds 为DataSet对象
xtw.Formatting = Formatting.Indented;
xtw.Indentation = 4;
xtw.IndentChar = ' ';
xtw.Flush();
Response.End();
xtw.Close();

将这段代码放到NotRefreshServer.aspx页面的后台Page_Load事件中,那么在客户端的result将接收到XML文件的内容,再将XML中数据显示出来即可.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值