AJax技术

ajax验证用户名是否可用

字号+ 作者:H5之家 来源:H5之家 2017-01-04 16:00 我要评论( )

文章标题:ajax验证用户名是否可用。希赛网JAVA频道是一个专业的JAVA技术平台,着眼于业界尖端技术,提供及时全面的JAVA技术和资讯文章,为广大的JAVA爱好者提供

  Ajax很简单(jsp例子)

  首先是jsp页面和脚本,为了方便写在一个里面

  这是一个很常见的检测用户名是否存在的功能

  这里用的是struts ,可以在路径path中加加上要传的值name 在action中连接数据库 验证是否存在

  --------------------------------------------------------------------------------

  <%@ page contentType="text/html; charset=GBK" %>

  <html>

  <head>

  <title>

  ajax

  </title>

  </head>

  <body bgcolor="#ffffff">

  <h1>

  <input type="text" maxlength="20" />

  <input type="button" value="检测帐号" />

  <div></div>

  </h1>

  </body>

  </html>

  <script language="javascript">

  if (window.ActiveXObject && !window.XMLHttpRequest) {

  window.XMLHttpRequest=function() {

  return new ActiveXObject((navigator.userAgent.toLowerCase().indexOf(’msie 5’) != -1) ? ’Microsoft.XMLHTTP’ : ’Msxml2.XMLHTTP’);

  };

  }//取得XMLHttpRequest对象

  function testName(path){

  //path是取得系统路径

  var view_name=document.getElementById("view_name");

  var req=new XMLHttpRequest();

  if (req) {

  req.onreadystatechange=function() {

  if (req.readyState==4 && req.status==200) {//判断状态,4是已发送,200已完成

  if(req.responseText==0){

  lor=’green’;

  view_name.innerHTML=’该用户名可以正常使用’;

  }else if(req.responseText==1){

  lor=’red’;

  view_name.innerHTML=’该用户名已经被使用’;

  }else{

  lor=’red’;

  view_name.innerHTML=’该用户名含有非法字符!’;

  }

  }

  }

  req.open(’POST’, path+’/ajax.do’);//struts

  //req.open(’POST’, path+’/ajax.servlet’);//servlet

  //req.open(’POST’, path+’/ajax.action’);//webwork

  req.setRequestHeader(’Content-Type’, ’application/x-www-form-urlencoded’);

  req.send("");//发送参数如果有参数req.send("username="+user_name);用request取得

  }

  }

  </script>

  这个jsp页面并没有取得用户名,就是演示一下。还有<div>可以换span,具体作用问美工吧。

  接受ajax请求的action。

  import org.apache.struts.action.*;

  import javax.servlet.http.*;

  import javax.servlet.http.HttpServlet;

  import javax.servlet.http.HttpServletRequest;

  import javax.servlet.http.HttpServletResponse;

  import java.io.PrintWriter;

  /**

  * <p>Title:AjaxAction </p>

  */

  public class AjaxAction extends Action {

  public ActionForward execute(ActionMapping mapping,

  ActionForm form,

  HttpServletRequest request,

  HttpServletResponse response)

  throws Exception {

  PrintWriter out = response.getWriter();

  out.print(1);//ajax取得都是字符的输出。如果数据量大的话,还可以用xml来发送和接受

  return null;

  }

  }

  struts-config.xml

  <action type="test.whw.upload.AjaxAction" validate="false" scope="request"   path="/ajax"/>

  ----------------------------

  如果是servlet

  web.xml

  <servlet>

  <servlet-name>AjaxServlet </servlet-name>

  <servlet-class>servlet.AjaxServlet </servlet-class>

  </servlet>

  <servlet-mapping>

  <servlet-name>AjaxServlet </servlet-name>

  <url-pattern>/AjaxServlet .servlet</url-pattern>

  </servlet-mapping>

  AjaxServlet.java

  import java.io.IOException;

  import java.io.PrintWriter;

  import javax.servlet.ServletException;

  import javax.servlet.http.HttpServlet;

  import javax.servlet.http.HttpServletRequest;

  import javax.servlet.http.HttpServletResponse;

  public class AjaxServlet extends HttpServlet {

  Logger log = Logger.getLogger(this.getClass());

  public void doGet(HttpServletRequest request, HttpServletResponse response)

  throws ServletException,IOException {

  response.setContentType("text/xml; charset=GBK");

  PrintWriter out = response.getWriter();

  out.print(2);

  }

  }

  //Process the HTTP Post request

  public void doPost(HttpServletRequest request, HttpServletResponse response)

  throws ServletException, IOException {

  doGet(request, response);

  }

  //Process the HTTP Put request

  public void doPut(HttpServletRequest request, HttpServletResponse response)

  throws ServletException, IOException {

  }

  //Process the HTTP Delete request

  public void doDelete(HttpServletRequest request,

  HttpServletResponse response) throws ServletException, IOException {

  }

  //Clean up resources

  public void destroy() {

  }

  }

  -------------------------------------

  如果是webwork

  xwork.xml

  <action method="ajax"/>

  AjaxAction.java

  import java.io.PrintWriter;

  public class AjexAlbumAction extends ActionSupport implements Action{

  public void ajax()throws IOException {

  PrintWriter pw = ServletActionContext.getResponse().getWriter();

  ServletActionContext.getResponse().setContentType("text/html;charset=GBK");

  pw.print(1);

  pw.close();

  }

  }

 

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

相关文章
  • 学习.net与ajax的详细案例总结

    学习.net与ajax的详细案例总结

    2017-01-05 13:02

  • PHP ServerPush 数据推送技术 即反向Ajax

    PHP ServerPush 数据推送技术 即反向Ajax

    2017-01-04 15:02

  • 《安徽电子信息职业技术学院学报》2008年05期

    《安徽电子信息职业技术学院学报》2008年05期

    2017-01-03 18:01

  • asp.net mvc 使用Ajax调用Action 返回数据

    asp.net mvc 使用Ajax调用Action 返回数据

    2017-01-03 18:00

网友点评