JavaScript自动生成 年月范围 选择功能完整示例【基于jQuery插件】


Posted in jQuery onSeptember 03, 2019

本文实例讲述了JavaScript实现的自动生成 年月范围 选择功能。分享给大家供大家参考,具体如下:

近日做项目涉及到日期选择,为了用户界面友好,于是加入了一年内的年月段的查询功能,先看效果

JavaScript自动生成 年月范围 选择功能完整示例【基于jQuery插件】

JavaScript自动生成 年月范围 选择功能完整示例【基于jQuery插件】

会自动判断当前年份

以下为html代码 其中用到了 Jquery 和 struts 标签 但是这两个都不是重要的 主要书 用于赋值 和 取值方便

还用到了 WdatePicker 插件进行具体日期选择

<%@ 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){//获得某年某月最大天数
var d= new Date();
d.setUTCFullYear(year,month);
return new Date(d.getFullYear(), d.getMonth()+1,0).getDate();
}
function getEndTime(){ //动态生成 月初日期 和 月末日期
  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>

以上为核心代码,有需要的兄弟尽管拿去用,如有更好的请帮忙推荐。

jQuery 相关文章推荐
jquery中$.fn和图片滚动效果实现的必备知识总结
Apr 21 jQuery
简单实现jQuery弹幕效果
May 06 jQuery
jQuery实现键盘回车搜索功能
Jul 25 jQuery
jQuery选取所有复选框被选中的值并用Ajax异步提交数据的实例
Aug 04 jQuery
jQuery实现定时隐藏对话框的方法分析
Feb 12 jQuery
jQuery实现鼠标响应式透明度渐变动画效果示例
Feb 13 jQuery
jQuery实现动态加载select下拉列表项功能示例
May 31 jQuery
jQuery常见的遍历DOM操作详解
Sep 05 jQuery
Jquery实现获取子元素的方法分析
Aug 24 jQuery
Jquery动态列功能完整实例
Aug 30 jQuery
jquery实现图片放大镜效果
Dec 23 jQuery
ajax jquery实现页面某一个div的刷新效果
Mar 04 jQuery
Jquery动态列功能完整实例
Aug 30 #jQuery
jQuery - AJAX load() 实例用法详解
Aug 27 #jQuery
jQuery实现判断滚动条滚动到document底部的方法分析
Aug 27 #jQuery
解决jquery validate 验证不通过后验证正确的信息仍残留在label上的方法
Aug 27 #jQuery
Jquery实现获取子元素的方法分析
Aug 24 #jQuery
jquery分页优化操作实例分析
Aug 23 #jQuery
jquery实现的分页显示功能示例
Aug 23 #jQuery
You might like
PHP中FTP相关函数小结
2016/07/15 PHP
laravel实现上传图片的两种方式小结
2019/10/12 PHP
Jquery 设置标题的自动翻转
2009/10/03 Javascript
清空上传控件input file的值
2010/07/03 Javascript
jquery判断浏览器类型的代码
2012/11/05 Javascript
js加减乘除丢失精度问题解决方法
2014/05/16 Javascript
javascript实现切换td中的值
2014/12/05 Javascript
JavaScript判断是否为数组的3种方法及效率比较
2015/04/01 Javascript
javascript操作ul中li的方法
2015/05/14 Javascript
JavaScript中的条件判断语句使用详解
2015/06/03 Javascript
jQuery实现固定在网页顶部的菜单效果代码
2015/09/02 Javascript
jQuery时间插件jquery.clock.js用法实例(5个示例)
2016/01/14 Javascript
WordPress 单页面上一页下一页的实现方法【附代码】
2016/03/10 Javascript
再谈javascript常见错误及解决方法
2016/09/16 Javascript
Vue 页面状态保持页面间数据传输的一种方法(推荐)
2018/11/01 Javascript
微信小程序仿知乎实现评论留言功能
2018/11/28 Javascript
解析原来浏览器原生支持JS Base64编码解码
2019/08/12 Javascript
[06:37]2014DOTA2国际邀请赛 昔日王者渴望重回巅峰
2014/07/12 DOTA
使用Python标准库中的wave模块绘制乐谱的简单教程
2015/03/30 Python
python中字典(Dictionary)用法实例详解
2015/05/30 Python
深入解读Python解析XML的几种方式
2016/02/16 Python
Python中read()、readline()和readlines()三者间的区别和用法
2017/07/30 Python
python opencv设置摄像头分辨率以及各个参数的方法
2018/04/02 Python
基于python list对象中嵌套元组使用sort时的排序方法
2018/04/18 Python
python内置数据类型之列表操作
2018/11/12 Python
Tensorflow进行多维矩阵的拆分与拼接实例
2020/02/07 Python
Python读取文件内容为字符串的方法(多种方法详解)
2020/03/04 Python
浅析python标准库中的glob
2020/03/13 Python
浅谈Django中的QueryDict元素为数组的坑
2020/03/31 Python
校园活动宣传方案
2014/03/28 职场文书
目标责任书范文
2014/04/14 职场文书
运输企业安全生产责任书
2014/07/28 职场文书
励志演讲稿300字
2014/08/21 职场文书
学校机关党总支领导班子整改工作方案
2014/10/26 职场文书
2015年世界水日活动总结
2015/02/09 职场文书
python字符串的一些常见实用操作
2022/04/06 Python