標籤:style blog color io java ar 2014 div 問題
我們在js中的時間格式一般有
2014-09-09
2014-9-9
2014/09/09
2014/9/9
這幾種顯示顯示中只有第二種有問題
var date =new Date("2014-9-9“)
這種方式是有問題的,行不通
一般的情況就是將”-“替換成”/”
下面代碼:
<script type="text/javascript" > String.prototype.Trim = function () { return this.replace(/(^\s*)|(\s*$)/g, ""); } //是否是正確的長日期 String.prototype.isLongDate = function () { var r = this.replace(/(^\s*)|(\s*$)/g, "").match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/); if (r == null) { return false; } var d = new Date(r[1], r[3] - 1, r[4], r[5], r[6], r[7]); return (d.getFullYear() == r[1] && (d.getMonth() + 1) == r[3] && d.getDate() == r[4] && d.getHours() == r[5] && d.getMinutes() == r[6] && d.getSeconds() == r[7]); } //是否是正確的短日期 String.prototype.isShortDate = function () { var r = this.replace(/(^\s*)|(\s*$)/g, "").match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/); if (r == null) { return false; } var d = new Date(r[1], r[3] - 1, r[4]); return (d.getFullYear() == r[1] && (d.getMonth() + 1) == r[3] && d.getDate() == r[4]); } //是否是正確的日期 String.prototype.isDate = function () { return this.isLongDate() || this.isShortDate(); } function valid() { var id = document.getElementById("<%=txtOrderID.ClientID %>").value; var beginTime = document.getElementById("<%=txtBeginTime.ClientID %>").value; var endTime = document.getElementById("<%=txtEndTime.ClientID %>").value; id = id.Trim(); beginTime = beginTime.Trim(); endTime = endTime.Trim(); if (id == "") {// if (isNaN(id)) {// alert("請輸入合適的訂單號");return false; // } if (!beginTime.isDate()) { alert("請輸入合適的開始時間!");return false; } if (!endTime.isDate()) { alert("請輸入合適的結束時間!"); return false; } beginTime = beginTime.replace(/-/gi, "/"); endTime = endTime.replace(/-/gi, "/"); var begin = new Date(beginTime); var end = new Date(endTime); if (begin > end) { alert("開始時間不能大於結束時間!"); return false; } begin.setDate(begin.getDate() + 7); if (begin < end) { alert("時間跨度不能超過一周!"); return false; } } } </script>
js關於時間的格式問題