js 動態(tài)校驗開始結(jié)束時間的實現(xiàn)代碼
很多時候要動態(tài)校驗開始結(jié)束時間,每次都要寫一次,太麻煩,以備后面拷貝使用,
代碼作用簡介:
開始結(jié)束時間,聯(lián)動,開始時間前后移動,對應(yīng)結(jié)束時間相應(yīng)變化,時間差30天
html:
<input type="date" placeholder="請輸入(From)..." id="txtStartDate" value="${startDate }" onblur="onblurStartDate();" /> <input type="date" placeholder="請輸入(To)..." id="txtEndDate" value="${endDate }" onblur="onblurEndDate();" />
js:
<script type="text/javascript"> /** * 動態(tài)校驗開始時間 * @returns */ function onblurStartDate() { var startDateStr = $("#txtStartDate").val(); var nowDate = new Date().toISOString().substring(0, 10); //當(dāng)前時間截取操作 var endDateStr = addDate(startDateStr, 29); if(startDateStr >= nowDate) { alert("開始時間不能大于等于今天!"); var endDate = addDate(nowDate, -29); $("#txtStartDate").val(endDate); return; } if(endDateStr >= nowDate) { $("#txtEndDate").val(nowDate); return false; } $("#txtEndDate").val(endDateStr); } /** * 動態(tài)校驗結(jié)束時間 * @returns */ function onblurEndDate() { var endDateStr = $("#txtEndDate").val(); var nowDate = new Date().toISOString().substring(0, 10); //當(dāng)前時間截取操作 if(endDateStr > nowDate) { alert("結(jié)束時間不能大于今天!"); $("#txtEndDate").val(nowDate); var startDate = addDate(nowDate, -29); $("#txtStartDate").val(startDate); return false; } var startDateStr = addDate(endDateStr, -29); $("#txtStartDate").val(startDateStr); } /** * 日期加減法 格式:addDate('2017-01-11',20) * @param date計算開始的日期 * @param days需要加的天數(shù) (正數(shù)加,負(fù)數(shù)減) * @returns 計算后的時間 */ function addDate(date, days) { var d = new Date(date); d.setDate(d.getDate() + parseInt(days)); var m = d.getMonth() + 1; m = parseInt(m) < 10 ? ('0' + m) : m; var day = parseInt(d.getDate()) < 10 ? ('0' + d.getDate()) : d.getDate(); return d.getFullYear() + '-' + m + '-' + day; } </script>
java后臺:
/** * 頁面初始化+指定時間 * @param request * @param response * @return */ @RequestMapping(value = { "/pageInit.do" }) protected String pageInit(final HttpServletRequest request, final HttpServletResponse response) { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); request.setAttribute("startDate", sdf.format(TimeUtils.addDate(new Date(), -29))); request.setAttribute("endDate", sdf.format(new Date())); return "taskManage/taskindex"; }
總結(jié)
到此這篇關(guān)于js 動態(tài)校驗開始結(jié)束時間的文章就介紹到這了,更多相關(guān)js 動態(tài)校驗時間內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Js+Dhtml:WEB程序員簡易開發(fā)工具包(預(yù)先體驗版)
Js+Dhtml:WEB程序員簡易開發(fā)工具包(預(yù)先體驗版)...2006-11-11js+canvas實現(xiàn)兩張圖片合并成一張圖片的方法
這篇文章主要介紹了js+canvas實現(xiàn)兩張圖片合并成一張圖片的方法,結(jié)合實例形式分析了JavaScript結(jié)合HTML5 canvas實現(xiàn)圖片合并的操作技巧,并附帶了Java圖片合并的實現(xiàn)方法,需要的朋友可以參考下2019-11-11JavaScript控制瀏覽器全屏及各種瀏覽器全屏模式的方法、屬性和事件
這篇文章主要介紹了JavaScript控制瀏覽器全屏及各種瀏覽器全屏模式的方法、屬性和事件的相關(guān)資料,需要的朋友可以參考下2015-12-12JavaScript canvas實現(xiàn)跟隨鼠標(biāo)事件
這篇文章主要為大家詳細(xì)介紹了JavaScript canvas實現(xiàn)跟隨鼠標(biāo)事件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2020-02-02