日期:2014-05-18  浏览次数:20781 次

问个AJAX控件的问题
try
  {
  if (obj == null || obj.ToString().Trim().Equals(""))
  {
  content.InnerHtml = "<a href='../Login.aspx' target='_parent'>您还没有登录,或已超时</a>";
  string str = " <script language=javascript>setTimeout(\"window.top.location.replace('../login.aspx')\",3000);</script> ";

  Response.Write(str);
  return;
  }
  }
  catch (Exception ex)
  {
  Response.Redirect("../Login.asp?redirect=1");
  return;
  }
以上是在Page_Load中,因为用了UpdatePanel就不能用Response.Write();了.会弹出一个对话框.
所以我想Try一下,结果什么也捕获不到.

------解决方案--------------------
ajax不能用response.write()刷新输出的.
HttpContext.Current.Response.write(str); 

------解决方案--------------------
[Ajax.AjaxMethod
()]换为[Ajax.AjaxMethod(Ajax.HttpSessionStateRequirement.Read)]