这里只是简单做了一个字符串,并没有做xml的处理 
 <script language="javascript">   var xmlHttpRequest = null;   function selectionChanged()   {    var url = "Default.aspx?index=" + document.getElementById("select").value;        // IE only.    xmlHttpRequest = new ActiveXObject("Msxml2.XMLHTTP");    xmlHttpRequest.onreadystatechange = onReadyStateChange;    xmlHttpRequest.open("GET", url, true);    xmlHttpRequest.send(null);   }      function onReadyStateChange()   {    if (xmlHttpRequest.readyState == 4)    {     if (xmlHttpRequest.status == 200)     {            var wwwww= document.getElementById("text");      wwwww.innerHTML = xmlHttpRequest.responseText;     }    }   }     </script> 
  
以前自己做ajax都是请求的.ashx页面  今天请求了一下aspx页发现一个问题 
  
<%@ WebHandler Language="C#" Class="Handler" %> 
using System; using System.Web; using System.Data; using System.Web; using System.Data.SqlClient; public class Handler : IHttpHandler {          public void ProcessRequest (HttpContext context) {         context.Response.ContentType = "text/plain";         context.Response.Write("Hello World"); 
        try         {             context.Response.Write("<text>" + " " + "</text>");         }         catch         {             context.Response.Write("没有记录");         }         context.Response.End();     }       public bool IsReusable {         get {             return false;         }     } } 
 当是.ashx页时context.Response.End();不用写也可以,因为ProcessRequest 它是一个完整的http请求处理, 
不写End在方法结束后请求也结束了 
当是.aspx页时 
  
public partial class Ajax_Default : System.Web.UI.Page {     protected void Page_Load(object sender, EventArgs e)     {         Response.ContentType = "text/plain";         Response.Write("Hello World"); 
        try         {             Response.Write("<text>" + " " + "</text>");         }         catch         {             Response.Write("没有记录");         }         Response.End();     } } 
        Response.End();是必须写的,因为pageload只不过是http请求处理的一部分,后面还有很多处理,如果不结束返回值不知道被处理成什么了  |