JavaScript自動(dòng)生成 年月范圍 選擇功能完整示例【基于jQuery插件】
本文實(shí)例講述了JavaScript實(shí)現(xiàn)的自動(dòng)生成 年月范圍 選擇功能。分享給大家供大家參考,具體如下:
近日做項(xiàng)目涉及到日期選擇,為了用戶界面友好,于是加入了一年內(nèi)的年月段的查詢功能,先看效果


會(huì)自動(dòng)判斷當(dāng)前年份
以下為html代碼 其中用到了 Jquery 和 struts 標(biāo)簽 但是這兩個(gè)都不是重要的 主要書 用于賦值 和 取值方便
還用到了 WdatePicker 插件進(jìn)行具體日期選擇
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
<script type="text/javascript">
$(function(){
selectMonth();
})
//年月選擇 star
function selectMonth(){
var myDate = new Date();
var year = myDate.getUTCFullYear();
var month = myDate.getUTCMonth ();
var dateList = new Array();
var endDay;
for(var i=0;i<=12;i++){
var m = month+i;
endDay = maxDay(m,year-1);
if(m<12)
dateList.push((year-1)+"-"+(m+1)+"~"+endDay);
else
dateList.push(year+"-"+(m-11)+"~"+endDay);
}
dateList.reverse();
$.each(dateList,function(idx,item){
var ym = item.split("~");
var mon = ym[0].split("-");
if(mon[1]==(month+1) && mon[0] == year)
$("#dateList").append("<option value="+myDate.getDate()+">"+"本月"+"</option>");
else
$("#dateList").append("<option value="+ym[1]+">"+ym[0]+"</option>");
})
getEndTime();
}
function maxDay(month,year){//獲得某年某月最大天數(shù)
var d= new Date();
d.setUTCFullYear(year,month);
return new Date(d.getFullYear(), d.getMonth()+1,0).getDate();
}
function getEndTime(){ //動(dòng)態(tài)生成 月初日期 和 月末日期
var list = $("#dateList option:selected");
var selMonth = $("#dateList option:selected").html()
if( selMonth == "本月"){
var d = new Date();
$("#starTime").val(d.getUTCFullYear()+"-"+(d.getUTCMonth()+1)+"-1");
$("#endTime").val(d.getUTCFullYear()+"-"+(d.getUTCMonth()+1)+"-"+list.val());
}else{
$("#starTime").val(selMonth+"-1");
$("#endTime").val(selMonth+"-"+list.val());
}
}
//年月選擇end
</script>
<body>
<td nowrap="nowrap" style="width: 15%" align="center">
日期:
<select id="dateList" οnchange="getEndTime()"> </select>
從
<input name="starTime" id="starTime"
value="<s:date name="starTime" format="yyyy-MM-dd"/>"
onFocus="WdatePicker()" class="Wdate"
style="width: 110px; height: 17px; border-left: 0; border-top: 0; border-right: 0; border-bottom-color: #C06" />
至
<input name="endTime" id="endTime"
value="<s:date name="endTime" format="yyyy-MM-dd"/>"
onFocus="WdatePicker()" class="Wdate"
style="width: 110px; height: 17px; border-left: 0; border-top: 0; border-right: 0; border-bottom-color: #C06" />
</td>
</body>
以上為核心代碼,有需要的兄弟盡管拿去用,如有更好的請(qǐng)幫忙推薦。
PS:這里再為大家推薦幾款時(shí)間及日期相關(guān)工具供大家參考使用:
在線日期/天數(shù)計(jì)算器:
http://tools.jb51.net/jisuanqi/date_jisuanqi
在線日期計(jì)算器/相差天數(shù)計(jì)算器:
http://tools.jb51.net/jisuanqi/datecalc
在線日期天數(shù)差計(jì)算器:
http://tools.jb51.net/jisuanqi/onlinedatejsq
Unix時(shí)間戳(timestamp)轉(zhuǎn)換工具:
http://tools.jb51.net/code/unixtime
更多關(guān)于jQuery相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《jQuery日期與時(shí)間操作技巧總結(jié)》、《jQuery擴(kuò)展技巧總結(jié)》、《jQuery常見事件用法與技巧總結(jié)》、《jQuery常用插件及用法總結(jié)》、《jQuery常見經(jīng)典特效匯總》及《jquery選擇器用法總結(jié)》
希望本文所述對(duì)大家jQuery程序設(shè)計(jì)有所幫助。
- jquery 日期分離成年月日的代碼
- jQuery實(shí)現(xiàn)倒計(jì)時(shí)(倒計(jì)時(shí)年月日可自己輸入)
- jQuery實(shí)現(xiàn)動(dòng)態(tài)生成年月日級(jí)聯(lián)下拉列表示例
- jquery中實(shí)現(xiàn)時(shí)間戳與日期相互轉(zhuǎn)換
- 獲取客戶端電腦日期時(shí)間js代碼(jquery)
- jQuery DateTimePicker 日期和時(shí)間插件示例
- jQuery帶時(shí)間的日期控件代碼分享
- jQuery移動(dòng)端日期(datedropper)和時(shí)間(timedropper)選擇器附源碼下載
- jquery仿蘋果的時(shí)間/日期選擇效果
- jQuery時(shí)間日期三級(jí)聯(lián)動(dòng)(推薦)
- 貼近用戶體驗(yàn)的Jquery日期、時(shí)間選擇插件
- jQuery時(shí)間戳和日期相互轉(zhuǎn)換操作示例
相關(guān)文章
jquery緩動(dòng)swing liner控制動(dòng)畫過程不同時(shí)刻的速度
一個(gè)用來控制動(dòng)畫過程的速度的參數(shù),這就是緩動(dòng)(easing),它確定了動(dòng)畫過程不同時(shí)刻的速度2014-05-05
jquery遍歷篩選數(shù)組的幾種方法和遍歷解析json對(duì)象
本文為大家介紹下jquery遍歷篩選數(shù)組的幾種方法和遍歷解析json對(duì)象的具體實(shí)現(xiàn),感興趣的朋友不要錯(cuò)過2013-12-12
jquery應(yīng)用實(shí)例分享_實(shí)現(xiàn)手風(fēng)琴特效
下面小編就為大家分享一篇jquery應(yīng)用實(shí)例_實(shí)現(xiàn)手風(fēng)琴特效的示例代碼。具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-02-02
jquery 多行滾動(dòng)代碼(附詳細(xì)解釋)
在網(wǎng)上可以隨處找到這段代碼,但是沒有任何人解釋這段代碼,只要自己研究好久。2010-06-06
jquery實(shí)現(xiàn)可自動(dòng)判斷位置的彈出層效果代碼
這篇文章主要介紹了jquery實(shí)現(xiàn)可自動(dòng)判斷位置的彈出層效果代碼,可實(shí)現(xiàn)根據(jù)鼠標(biāo)位置進(jìn)行合理的判斷并顯示彈出層的功能,涉及jQuery鼠標(biāo)事件及頁面元素位置屬性的相關(guān)判定技巧,需要的朋友可以參考下2015-10-10
jQuery插件slick實(shí)現(xiàn)響應(yīng)式移動(dòng)端幻燈片圖片切換特效
jQuery插件slick是一款響應(yīng)式、適用于移動(dòng)設(shè)備觸摸屏、可滑動(dòng)顯示的jQuery幻燈片插件。該幻燈片插件可以設(shè)置多種顯示效果,可以自動(dòng)播放,是一款移動(dòng)優(yōu)先的jQuery幻燈片插件。2015-04-04
jquery attr()設(shè)置和獲取屬性值實(shí)例教程
在JS中設(shè)置節(jié)點(diǎn)的屬性與屬性值用到setAttribute(),獲得節(jié)點(diǎn)的屬性與屬性值用到getAttribute(),而在jquery中,只需要用到attr()這個(gè)函數(shù)就可以了。attr是attribute(屬性)的縮寫。2016-09-09
jQuery EasyUI結(jié)合zTree樹形結(jié)構(gòu)制作web頁面
這篇文章主要為大家詳細(xì)介紹了JQuery EasyUI 結(jié)合ztrIee的后臺(tái)頁面開發(fā),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-09-09

