Js中的Ajax XMLHttpRequest的创建

Jsp页面

<script type="text/javascript">
 var XMLHttp
 function createXMLHttpRequest() {
  if (window.XMLHttpRequest) {
   //针对FireFox,Mozillar,Opera,Safari,IE7,IE8
   XMLHttp = new XMLHttpRequest();
   //针对某些特定版本的mozillar浏览器的BUG进行修正
   if (XMLHttp.overrideMimeType) {
    XMLHttp.overrideMimeType("text/xml");
   }
  } else if (window.ActiveXObject) {
   //针对IE6,IE5.5IE5
   XMLHttp = new ActiveXObject("Microsoft.XMLHTTP");
  }
 }
 function show() {
  var name = document.getElementById("name");
  var pwd = document.getElementById("pwd");

  if (name == "") {
   alert("请输入用户名");
   return false;
  } else if (pwd == "") {
   alert("请输入密码");
   return false;
  } else {
   doAjax();
  }

 }
 function doAjax() {
  createXMLHttpRequest();
  var name = document.getElementById("name").value;
  var pwd = document.getElementById("pwd").value;

  if (XMLHttp != null) {
   //注册回调函数不要括号(会把函数的返回值注册上的这是错误的)
   XMLHttp.onreadystatechange = callback;
   //设置连接信息
   //http请求方式,请求url地址 异步还是同步true表示异步
  // XMLHttp.open("GET", "servlet/Ajaxservlet?name=" + name + "&pwd="
   //  + pwd, true);
   XMLHttp.open("POST","servlet/Ajaxservlet",true);
   //XMLHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded;");
   //XMLHttp.send("name=" + name + "&pwd="
   // + pwd);

   

   //发送数据开始和服务器进行数据交互
   //XMLHttp.send(null);

   //同步方式下send这句话会在服务端数据回来后才执行完
   //异步方式下send 这句话会立即执行完

  } else {
   alert("不能创建对象实例");
  }

 }
 function callback() {
  //判断对象的交互是否完成
  if (XMLHttp.readyState==4) {
   //判断http交互
   if (XMLHttp.status==200) {

    var sobj = document.getElementById("login");
    var str = XMLHttp.responseText;
    if (str !== 0) {
    
     var c = document.getElementById("error").innerHTML = "用户名或密码错误"; 
     alert(c);
    } else {
     

    }
   }
  }
 }
</script>

 

 

servllet页面


  response.setContentType("text/xml");
  
  PrintWriter out = response.getWriter();
  IUsersBiz  biz = new UsersBizImpl();
  Users user = new  Users();
  String name = request.getParameter("name");
  String pwd = request.getParameter("pwd");
  user.setName(name);
  user.setPwd(pwd);
  try {
   Users u  = biz.select(user);
   if(u==null){
    out.print("dfd");
   }
   
  } catch (Throwable e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }finally{
   if(out!=null){
    out.flush();
    out.close();
   }
  }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值