xml请求
各位有时间帮我看下下面的代码,为何在点击Button按钮的时候会没有反应,显示网页错误:
<%@ 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>
<script type="text/javascript" language="javascript">
var url,req,ajaxname;
ajaxname="request.aspx";
function getAjax()
{
var xmlhttp;
try
{
xmlhttp=new ActiveXObject("maxml2.XMLHTTP");
}catch(e)
{
try
{
xmlhttp= new ActiveXObject("Microsoft.XMLHTTP");
}catch(oc)
{
xmlhttp=null
}
}
if(!xmlhttp&&typeof XMLHttpRequest !="undefined")
{
xmlhttp=new XMLHttpRequest();
}
return xmlhttp;
}
function sendxmlrequest()
{
var xmlstr=createXML();
req=getAjax();
req.onreadystatechange=HandleXML;
req.open('POST','request.aspx',true);
req.send(xmlstr);
}
function createXML()
{
var xml="<?xml version=\"1.0\" encoding=\"utf-8\"?>";
xml=xml+"<sites>";
for(i=0;i<document.form0.interestTypes.length;i++)
{
if(document.form0.interestTypes
.checked)
{
xml=xml+"<site>"+document.form0.interestTypes.value+"<\/site>"
}
}
xml =xml+"<\/sites>";
return xml;
}
function HandleXML()
{
if(req.readyState==4&&status==200)
{
var ob=document.getElementById("res");
var xmlrequest=req.responseText;
ob.innerHTML=xmlrequest;
}
}
</script>
</head>
<body>
<from name="from0" action="#">
<h3>选择你经常登录的网站:</h3>
<label for="itzcn">
<input id="itzcn" type="checkbox" checked="checked" value="itzcn" name="interestTypes"/>中国原创教程网
</label>
<label for="163">
<input id="163" type="checkbox" value="163" name="interestTypes"/>163新闻网
</label>
<label for="baidu">
<input id="baidu" type="checkbox" value="baidu" name="interestTypes"/>百度搜索
</label>
<label for="dangdang">
<input id="dangdang" type="checkbox" value="dangdang" name="interestTypes"/>当当书店
</label>
<label for="csdn">
<input id="csdn" type="checkbox" value="csdn" name="interestTypes"/>CSDN技术联盟
</label>
<br/><br/>
<input type="button" value="发送XML请求" />
</from>
<div>
<h2>服务器返回的信息:</h2>
<div id="res"></div>
</div>
</body>
</html>
后台代码request.aspx代码如下:
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.IO;
using System.Xml;
public partial class request : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Stream resStream = request.InputStream;
StreamReader str = new StreamReader(resStream,System.Text.Encoding.Default);
string st = str.ReadToEnd();
xmlDocument xmldoc = new xmlDocument();
xmldoc.loadxml(st);
System.Xml.XmlNodeList ndlist = xmldoc.GetElementsByName("site");
foreach (xmlNode xn in ndlist)
{
string ndvalue = xn.InnerText;
Response.Write("你选择的站点是:"+ndvalue+"<br/>");
}
}
}