js验证日期格式
下面介紹兩種JS驗證的方式:
方法一:
JS:
<script language="javascript"> function check(){ var a = /^(\d{4})-(\d{2})-(\d{2})$/ if (!a.test(document.getElementById("TextBox1").value)) { alert("日期格式不正確!") return false } else return true } </script>HTML:
<div><asp:TextBox ID="TextBox1" runat="server" onblur="check();"></asp:TextBox><asp:Button ID="Button1" runat="server" Text="Button" /></div>?
上面的方法是驗證YYYY-MM-DD日期格式,不能驗證“2012-11-45”之類的不正確的日期
方法二:
JS:
<script type="text/javascript">function check(){ alert("sss");var date = document.getElementById("TextBox1").value;var result = date.match(/((^((1[8-9]\d{2})|([2-9]\d{3}))(-)(10|12|0?[13578])(-)(3[01]|[12][0-9]|0?[1-9])$)|(^((1[8-9]\d{2})|([2-9]\d{3}))(-)(11|0?[469])(-)(30|[12][0-9]|0?[1-9])$)|(^((1[8-9]\d{2})|([2-9]\d{3}))(-)(0?2)(-)(2[0-8]|1[0-9]|0?[1-9])$)|(^([2468][048]00)(-)(0?2)(-)(29)$)|(^([3579][26]00)(-)(0?2)(-)(29)$)|(^([1][89][0][48])(-)(0?2)(-)(29)$)|(^([2-9][0-9][0][48])(-)(0?2)(-)(29)$)|(^([1][89][2468][048])(-)(0?2)(-)(29)$)|(^([2-9][0-9][2468][048])(-)(0?2)(-)(29)$)|(^([1][89][13579][26])(-)(0?2)(-)(29)$)|(^([2-9][0-9][13579][26])(-)(0?2)(-)(29)$))/);if(result==null){alert("請輸入正確的日期格式");return false;}}</script>HTML:
<div><asp:TextBox ID="TextBox1" runat="server" onblur="check();"></asp:TextBox><asp:Button ID="Button1" runat="server" Text="Button" /></div>這個方法驗證的比較全面
補充一個方法,方法三:
JS
function RQcheck(RQ) {var date = RQ;var result = date.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/);if (result == null)return false;var d = new Date(result[1], result[3] - 1, result[4]);return (d.getFullYear() == result[1] && (d.getMonth() + 1) == result[3] && d.getDate() == result[4]);}function CheckAdd() {var ret = true;if (!RQcheck($id("txt_LLRQ").value)) {alert("請輸入正確的日期");return false;}return ret;}此方法實現效果和方法二相同
轉載于:https://www.cnblogs.com/fuge/archive/2012/07/22/2604018.html
總結
- 上一篇: linux下的Tomcat启动
- 下一篇: Ruby表达式