簡單的ajax請求aspx頁

來源:互聯網
上載者:User

 這裡只是簡單做了一個字串,並沒有做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請求處理的一部分,後面還有很多處理,如果不結束傳回值不知道被處理成什麼了

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.