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

在网上找到一个ajax的例子,但是怎么运行不通
后台:
 protected void Page_Load(object sender, EventArgs e)
  {
  //这里你可以连至用户表检查是否存在这个用户名,当然如果你用membership中的验证方法会更简洁.
  if (Server.HtmlEncode(UserName) == "123456")
  Response.Write("regok");
  else
  Response.Write("error");
  }


前台:
function ValidateUser()
  {
  //获得用于显示验证是否通过的详细信息
  var obj=document.getElementById("default");
  //获取用户输入的用户名的值
  var str=document.getElementById("txtUserName").value;
  //定义一个bool型变量
  var chk=true;
  if (chk){
  //因为输入的用户名可能含有中文,所以将其解码
  var username=escape(str);
  //用于验证用户名的后台页面
  var usrurl="Validate.aspx?UserName="+username;
  //获取从验证页面中异步传输过来的值
  var sta=GetResponseText(usrurl);
  //如果异步传输失败  
  if(sta==false){
  chk=true;
  obj.className="d_ok";
  obj.innerHTML='该会员未能检测,可以尝试注册。';
  }
  //异步传输成功
  else{
  //假如传过来的值的开始位置是"regok",这个值是在验证页面Response.Write出来的值,如果是regok则表示验证通过,否则的话就是验证失败.
  if(sta.indexOf("regok")!=-1){
  alert("ok");
  //验证通过
  chk=true;
  //用于显示验证是否通过的详细信息加上刚刚所定义正确时的样式
  obj.className="Right";
  obj.innerHTML='该会员名可以注册。';
  }else{
  alert("no");
  //验证未通过
  chk=false;
  //用于显示验证是否通过的详细信息加上刚刚所定义错误时的样式
  obj.className="Error";
  obj.innerHTML='该会员名已经被注册。';
  }
  }
  }else{
  obj.className="Error";
  }
  return chk;
  }
  function GetResponseText(url)
  {
  //定义一个http_request变量
  var http_request;
  if (window.XMLHttpRequest) {
  //对于Mozilla、Netscape、Safari等浏览器,创建XMLHttpRequest对象
  http_request = new XMLHttpRequest();
  if (http_request.overrideMimeType) {
  //如果服务器响应的header不是text/xml,可以调用其它方法修改该header
  http_request.overrideMimeType('text/xml');
  }
  } else if (window.ActiveXObject) {
  // 对于Internet Explorer浏览器,创建XMLHttpRequest
  try {
  http_request = new ActiveXObject("Msxml2.XMLHTTP");
  alert("1");
  } catch (e) {
  try {
  alert("2");
  http_request = new ActiveXObject("Microsoft.XMLHTTP");
  } catch (e) {}
  }
  }
  //打开验证页面的地址
  http_request.open('GET', url, false);
  http_request.send(null);
  if (http_request.readyState == 4)
     {
     alert("3");
     // 收到完整的服务器响应
     if (http_request.status == 200) {
     alert("4")