Ajax_完成前台JSP数据验证

JSP部分:

<%@ page language="java" import="java.util.*" pageEncoding="gbk"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>

   <title>My JSP 'index.jsp' starting page</title>
   <meta http-equiv="pragma" content="no-cache">
   <meta http-equiv="cache-control" content="no-cache">
   <meta http-equiv="expires" content="0">
   <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
   <meta http-equiv="description" content="This is my page">
   <!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
   <script language="javascript">
   var xmlHttp;

   //创建xmlHttp对象
   function createXMLHttpRequest()
   {
    if(window.ActiveXObject)
    {
     xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
    else
    {
     xmlHttp = new XMLHttpRequest();
    }
   }
   function validate()
   {
     createXMLHttpRequest();
     var date = document.getElementById("inputname");
     var url = "CheckNameServlet?inputname=" + escape(date.value);
     xmlHttp.open("GET", url, true);
     xmlHttp.onreadystatechange = callback;
     xmlHttp.send(null);
   }
   function callback()
   {
    if(xmlHttp.readyState == 4)
    {
     if(xmlHttp.status == 200)
     {
      var mes =xmlHttp.responseXML.getElementsByTagName("message")[0].firstChild.data;
        var val =xmlHttp.responseXML.getElementsByTagName("passed")[0].firstChild.data;
       setMessage(mes, val);
     }
    }
   }
   function setMessage(message, isValid)
   {
    var messageArea = document.getElementById("dateMessage");
     var fontColor = "red";
    if(isValid == "true")
    {
     fontColor = "green";
    }
    messageArea.innerHTML = "<font color=" + fontColor + ">"+ message + " </font>";
   }
</script>
</head>

<body>
   <h1>
    Ajax Validation Example
   </h1>
   Birth date:
   <input type="text" size="10" id="inputname" οnchange="validate();" />
   <div id="dateMessage"></div>
</body>
</html>

Servlet部分:

public class CheckNameServlet extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
   this.doPost(request, response);
}

public void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
   PrintWriter out = response.getWriter();
   boolean passed = validateDate(request.getParameter("inputname"));

   response.setContentType("text/xml");
   response.setHeader("Cache-Control", "no-cache");

   String message = "name existence";
   if (passed) {
    message = "You can user this name";
   }
   out.println("<response>");
   out.println("<passed>" + Boolean.toString(passed) + "</passed>");
   out.println("<message>" + message + "</message>");
   out.println("</response>");
   out.close();

}

private boolean validateDate(String date) {
   boolean isValid = true;
   if (date != null) {
    if(date.equalsIgnoreCase("mengya")){
     isValid=false;
    }
   }
   return isValid;
}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值