原生JS实现左右箭头选择日期实例代码

作者:realpzyyy 时间:2023-08-06 04:55:27 

先上个效果图,就是用左右尖括号可改变中间日期的值。(点击中间显示区域有时间选择器弹框,用的插件就不说了,主要说自己原创的部分)                      

原生JS实现左右箭头选择日期实例代码                                                  

HTML部分 (左右箭头都是用的图片素材,网上一大把,这里我就显示我本地地址了)


<div>
  <span class="leftspan" <span style="color:#FF0000;">onclick="reducedate()"</span>><img src="IMG/return.png" style="height:100%; width:100%;"/></span>
  <label id="beginTime" class="kbtn"></label>
  <span class="rightspan" <span style="color:#FF0000;">onclick="adddate()"</span>><img src="IMG/right.png" style="height:100%; width:100%;"</span>
</div>

HTML部分没什么可说的

下面原生JS部分了(底部有本插件附件,欢迎各路朋友评论交流)


function adddate(){
//向右跳转时间(加时间)的按钮
var s = document.getElementById("beginTime").innerHTML;
var arr = s.split("/"); //将获取的数组按“/”拆分成字符串数组
var year = parseInt(arr[0]);//开分字符串数组的第一个地址的内容是年份
var mouth = parseInt(arr[1]);//开分字符串数组的第二个地址的内容是月份
var date = parseInt( arr[arr.length-1]);//开分字符串数组的第三个地址的内容是日期
if(date == 28){//当日期为28号时 只判断是否是2月
switch(mouth)
{
 case 2:
 if(year % 4 == 0 && year % 100 !=0 || year%400 ==0){
 date = date +1;
 } //如果是闰年2月 日期就加一
 else {
 date = 1;
  mouth = mouth +1;
 } //不是闰年2月 日期就变为1 月份加一
}
}else if(date == 29){ //当日期为29号是 也是判断是否是2月
switch(mouth)
{
 case 2:
 date = 1;
 mouth = mouth +1;
} //当29号出现必定是闰年 日期变为1 月份加一
}else if(date == 30){ //当日期为30 时
switch(mouth)
 {
 case 1:
 case 3:
 case 5:
 case 7:
 case 8:
 case 10:
 case 12:
 date = date +1;
 break; //这些月份的时候一个月有31天 到30的时候再加一
 case 4:
 case 6:
 case 9:
 case 11:
 date = 1;
 mouth = mouth +1;
 break; //这些月份的时候一个月有30天 到30的时候 日期变为1 月份加一
 }
}else if(date == 31){
switch(mouth)
 {
 case 1:
 case 3:
 case 5:
 case 7:
 case 8:
 case 10:
 date = 1;
 mouth = mouth+1;
 break; //这些月份的时候一个月有31天 到31的时候 日期为1月份加一
 case 12:
 date = 1;
 mouth = 1;
 year = year+1;;
 break; //十二月 的 31 号 日期变为一 月份变为一 年份加一
 }
}else{
 date +=1;
 }
document.getElementById("beginTime").innerHTML = year+"/"+mouth+"/"+date;
}
function reducedate(){
//向左跳转时间(减时间)的按钮
var s = document.getElementById("beginTime").innerHTML;
var arr = s.split("/"); //将获取的数组按“/”拆分成字符串数组
var year = parseInt(arr[0]);//开分字符串数组的第一个地址的内容是年份
var mouth = parseInt(arr[1]);//开分字符串数组的第二个地址的内容是月份
var date = parseInt( arr[arr.length-1]);//开分字符串数组的第三个地址的内容是日期
if(date == 1){//当日期为1时,再剪就会改变月份,甚至年份
switch(mouth){
case 1:
 date = 31;
 mouth = 12;
 year = year-1;
 break; //一月一日 再剪一天 年份减一 月份为12 日期为31
 case 2:
case 4:
case 6:
case 8:
case 9:
case 11:
 date = 31;
 mouth = mouth-1;
 break; //这些月一日 再剪一天 月份减一 日期为31
case 3:
  if(year % 4 == 0 && year % 100 !=0 || year%400 ==0){
 date = 29;
 mouth = mouth -1;
 }else {
 date = 28;
 mouth = mouth -1;
 }
  break; //三月一日 再剪一天 月份减一 日期为根据是否是闰年来判断 日期
case 5:
case 7:
case 10:
 date = 30;
 mouth = mouth -1;
 break; //这些月一日 再剪一天 月份减一 日期为30
}
}else{
date = date-1;
}
document.getElementById("beginTime").innerHTML = year+"/"+mouth+"/"+date; //拼接字符串插入到标签中
}

写个使用API吧:

向左尖括号(减少时间)


<span style="color:#FF0000;">onclick="reducedate("tagid")";
/span>

向右尖括号(增加时间)


<span style="color:#FF0000;">onclick="adddate()("tagid")";
/span>

代码可复制到自己的JS中,也可插入。

以上所述是小编给大家介绍的原生JS 左右箭头选择日期实例代码,希望对大家有所帮助!

来源:http://blog.csdn.net/sinat_16463137/article/details/61925606

标签:js,箭头,日期
0
投稿

猜你喜欢

  • Django定时任务Django-crontab的使用详解

    2022-10-14 12:49:13
  • 正确使用字体和颜色 让网页内容更易阅读

    2007-09-13 18:45:00
  • Python大数据之从网页上爬取数据的方法详解

    2023-10-06 22:10:53
  • 《Python之禅》中对于Python编程过程中的一些建议

    2022-01-30 12:04:16
  • python上传时包含boundary时的解决方法

    2021-03-28 08:28:54
  • 真正好用的js验证上传文件大小的简单方法

    2024-04-22 13:04:52
  • python中显存回收问题解决方法

    2022-06-28 03:06:29
  • python matplotlib库直方图绘制详解

    2023-01-19 06:38:34
  • Python深度学习TensorFlow神经网络基础概括

    2022-08-13 02:57:18
  • 深入解析MS-SQL锁机制

    2024-01-27 19:03:21
  • python结合多线程爬取英雄联盟皮肤(原理分析)

    2023-05-31 21:49:37
  • SQL Server 2005附加数据库时Read-Only错误的解决方案

    2024-01-25 03:13:10
  • vue 开发一个按钮组件的示例代码

    2024-04-30 10:27:40
  • MySQL的join buffer原理

    2024-01-28 01:44:19
  • 如何让用户再次访问我的网站时不需再提交相关信息?

    2010-05-16 15:05:00
  • 解析Python 偏函数用法全方位实现

    2023-12-22 00:06:03
  • asp如何建立MYSQL数据库的连接?

    2009-11-26 20:30:00
  • Django项目中表的查询的操作

    2023-04-23 10:22:23
  • 用于ETL的Python数据转换工具详解

    2022-11-09 18:29:05
  • Python Django模板之模板过滤器与自定义模板过滤器示例

    2023-10-31 20:37:48
  • asp之家 网络编程 m.aspxhome.com