AJax技术

JAVA中的AJAX技术(2)

字号+ 作者:H5之家 来源:H5之家 2015-11-22 09:27 我要评论( )

这个例子是关于输入校验的问题,我们知道,在申请用户的时候,需要去数据库对该用户性进行唯一性确认,然后才能继续往下申请。如图: 这种校验需要访问后台数据库,但又不希望用户在这里提交后等待,当然是AJAX技术

   这个例子是关于输入校验的问题,我们知道,在申请用户的时候,需要去数据库对该用户性进行唯一性确认,然后才能继续往下申请。如图:
 
    这种校验需要访问后台数据库,但又不希望用户在这里提交后等待,当然是AJAX技术大显身手的时候了。
    首先来看显示UI的JSP:
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 <html>
 <head>
 <title>Check.html</title>
 
 <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
 <meta http-equiv="description" content="this is my page">
 
 <!--<link type="text/css" href="./styles.css">-->
 
 </head>
 <script type="text/javascript">
  var http_request = false;
  function send_request(url) {//初始化、指定处理函数、发送请求的函数
   http_request = false;
   //开始初始化XMLHttpRequest对象
   if(window.XMLHttpRequest) { //Mozilla 浏览器
    http_request = new XMLHttpRequest();
    if (http_request.overrideMimeType) {//设置MiME类别
     http_request.overrideMimeType('text/xml');
    }
   }
   else if (window.ActiveXObject) { // IE浏览器
    try {
     http_request = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
     try {
      http_request = new ActiveXObject("Microsoft.XMLHTTP");
     } catch (e) {}
    }
   }
   if (!http_request) { // 异常,创建对象实例失败
    window.alert("不能创建XMLHttpRequest对象实例.");
    return false;
   }
   http_request.onreadystatechange = processRequest;
   // 确定发送请求的方式和URL以及是否同步执行下段代码
   http_request.open("GET", url, true);
   http_request.send(null);
  }
  // 处理返回信息的函数
     function processRequest() {
         if (http_request.readyState == 4) { // 判断对象状态
             if (http_request.status == 200) { // 信息已经成功返回,开始处理信息
                 alert(http_request.responseText);
             } else { //页面不正常
                 alert("您所请求的页面有异常。");
             }
         }
     }
  function userCheck() {
   var f = document.form1;
   var username = f.username.value;
   if(username=="") {
    window.alert("The user name can not be null!");
    f.username.focus();
    return false;
   }
   else {
    send_request('check1.jsp?username='+username);
   }
  }
 
 </script>
 <body>
  <form action="" method="post">
 User Name:<input type="text" value="">&nbsp;
 <input type="button" value="check">
 <input type="submit" value="submit">
 </form>
 </body>
 </html>
 
    所有的JS都跟上一个例子一样,不同的只是对返回值的操作,这次是用alert来显示:alert(http_request.responseText);
    我们来看处理逻辑JSP:
 <%@ page contentType="text/html; charset=gb2312" language="java" errorPage="" %>
 <%
 String username= request.getParameter("username");
 if("educhina".equals(username)) out.print("用户名已经被注册,请更换一个用户名。");
 else out.print("用户名尚未被使用,您可以继续。");
 %>
 
    非常简单,先取得参数,然后作处理,最后将结果打印在out里。
    我们的第三个例子仍然以这个唯一性校验为例子,这次结合Struts开发框架来完成AJAX的开发。
 
 
四、基于Struts的AJAX

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • JQuery实现Ajax加载图片的方法

    JQuery实现Ajax加载图片的方法

    2016-02-24 17:01

  • 判断用户是不是为ajax请求

    判断用户是不是为ajax请求

    2016-02-24 17:00

  • Ajax与WEB开发 by alixixi.com

    Ajax与WEB开发 by alixixi.com

    2016-02-11 11:02

  • jQuery.ajax()的相关参数及使用

    jQuery.ajax()的相关参数及使用

    2016-02-08 16:00

网友点评