日期:2014-05-16  浏览次数:20650 次

asp ajax 不进入接收页面
function createXMLHttpRequest() {  
  if (window.ActiveXObject) {
  return new ActiveXObject("Microsoft.XMLHTTP");
  } else if (window.XMLHttpRequest) {
  return new XMLHttpRequest();
  }
  }
  var xhr;
  function insertComments(did) {
  var content = document.getElementById("thought"+did).value;  
  var url ="Judgment.aspx?did="+did+"&cont="+content;
  xhr = createXMLHttpRequest();
  xhr.onreadystatechange = readyDo;
  xhr.open("get", url, false);
  xhr.send(null);
  }
  //回调函数
  function readyDo() {
  if (xhr.readyState == 4 && xhr.status == 200) {
  var result = xhr.responseText; if (result == "true") {
  alert();
  } else {
  alert();
  }
  }
  }

我的 xhr.readyState == 4 && xhr.status == 200 返回值是对的
但是xhr.responseText;没有值,
接收页面是我新建的一个ASP页面,把页面内容全手动清空了
内部代码是
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Thought.BLL;

public partial class Judgment : System.Web.UI.Page
{
  protected void Page_Load(object sender, EventArgs e)
  {
  Response.ContentType = "text/plain";
  if (Request.QueryString["did"] != null)
  {
  string loginID = Request.QueryString["did"].ToString();
  if (loginID.Length > 0){  
  ThoughtManager tm = new ThoughtManager();
  if (tm.insertThoughtByID())
  {
  Response.Write("true");
  }
  else
  {
  Response.Write("false");
  }
  }
  else
  {
  Response.Write("false");
  }
  }
  else
  {
  Response.Write("false");
  }
  }
}


是不是我接受页面不对啊?我调试根本不进入接收页面

------解决方案--------------------
单独运行 Judgment.aspx 有值吗?

有firebug 看看 请求成功没。
------解决方案--------------------
我也遇到过这个问题:
最后是在 response之后 加了一个response.end();