在文本框中用户输入时间点击提交后,判断输入的是否为YYYYMMD的时间格式,用javascript代码怎么实现啊?
输入时间的文本框代码如下:
<td width="30%">
<asp:TextBox ID="transdate1" runat="server" Width="76px"
ToolTip="日期必须为YYYYMMDD格式" MaxLength="8"></asp:TextBox>
-<asp:TextBox ID="transdate2" runat="server" Width="76px"
ToolTip="日期必须为YYYYMMDD格式" MaxLength="8" ></asp:TextBox>
</td>
此段代码是处在<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1"Runat="Server">
</asp:Content>中的
输入时间的文本框代码如下:
<td width="30%">
<asp:TextBox ID="transdate1" runat="server" Width="76px"
ToolTip="日期必须为YYYYMMDD格式" MaxLength="8"></asp:TextBox>
-<asp:TextBox ID="transdate2" runat="server" Width="76px"
ToolTip="日期必须为YYYYMMDD格式" MaxLength="8" ></asp:TextBox>
</td>
此段代码是处在<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1"Runat="Server">
</asp:Content>中的
<script language="javascript" type="text/javascript">window.onload = function ()
{
var objDate1 = document.getElementById("<%=transdate1.ClientID%>");
objDate1.onblur = function(){if(!/\d{6}/.test(objDate1.value))alert("日期必须为YYYYMMDD格式");objDate1.focus()}
}
</script>
年:只能是公元0000年往后的年份
月:1-9月份需加前缀0,并且限定最大值为12
日:1-9日需加前缀0,并且最大值为31正则式:
^\d{4}((0[1-9])|(1[012]))(([012]\d)|(3[01]))$如果以负数表示公元前多少年,则正则式:
^-?\d{4}((0[1-9])|(1[012]))(([012]\d)|(3[01]))$如果限定时间在1000-2999年之间,则正则式:
^[12]\d{3}((0[1-9])|(1[012]))(([012]\d)|(3[01]))$
这个只可以判断transdate1啊,如果transdate2用同样的方法判断则会一直不停的提示"日期必须为YYYYMMDD格式",两个都判断怎么写啊?