验证日期合法性的例子:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript">
var xmlHttp;
function createXMLHTTPRequest()
{
if(window.ActiveXObject)
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
else if(window.XMLHttpRequest)
{
xmlHttp=new XMLHttpRequest();
}
}
function validate()
{
createXMLHTTPRequest();
var date=document.getElementById("birthDate");
var url="PostData?birthDate="+escape(date.value)+"&timeStamp="+(new Date()).getTime();
xmlHttp.open("Get",url,true);
xmlHttp.onreadystatechange=handleStateChange;
xmlHttp.send(null);
}
function handleStateChange()
{
if(xmlHttp.readyState==4)
{
if(xmlHttp.status==200)
{
var msg=xmlHttp.responseXML.getElementsByTagName("message")[0].firstChild.nodeValue;
var val=xmlHttp.responseXML.getElementsByTagName("passed")[0].firstChild.nodeValue;
setMessage(msg,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>
<form action="#">
<input type="text" size=10 name="birthDate" /><h4>例:01/02/2003</h4>
<input type="button" value="检测" οnclick="javascript:validate();">
<br>
<br>
<div id="dateMessage"></div>
</form>
</body>
</html>
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
import java.io.*;
import java.net.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.text.SimpleDateFormat;
public class PostData extends HttpServlet
{
protected void doGet(HttpServletRequest req,HttpServletResponse res)throws ServletException,IOException
{
doPost(req,res);
}
protected void doPost(HttpServletRequest req,HttpServletResponse res)throws ServletException,IOException
{
req.setCharacterEncoding("UTF-8");
String passed=req.getParameter("birthDate");
res.setContentType("text/xml");
res.setHeader("Cache-Control","no-cache");
String message="非法的日期!";
boolean isValid=true;
if(passed!=null)
{
SimpleDateFormat sdf=new SimpleDateFormat("MM/dd/yyyy");
try
{
sdf.parse(passed);
}
catch(Exception e)
{
isValid=false;
}
}
else
{
isValid=false;
}
if(isValid)
{
message="日期合法!";
}
res.setCharacterEncoding("UTF-8");
res.getWriter().print("<response><passed>"+Boolean.toString(isValid)+"</passed><message>"+message+"</message></response>");
}
}