使用jquery做一个日期时间选择器,最好使用bootstrap弹窗

实现:
(1)点击文本框弹出窗口;
(2)弹窗里面显示日期时间选择下拉
(3)年份取当前年份前后五年
(4)月份固定12个月
(5)天数根据年份与月份的变化而变化
(6)点击确定,关闭弹窗,文本框里面的时间编程选中时间
1.若是jQuery跟bootstrap弹窗,必须引入文件包;
2.写一个文本框,给他id用来写事件;
3.去bootstrap里面找到模态框,复制,黏上就行了;
4.把模态框里没用的东西去掉,并加上三个下拉框;
代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script src="dist/js/jquery-1.11.2.min.js"></script>
<script src="dist/js/bootstrap.min.js"></script>
<link href="dist/css/bootstrap.min.css" rel="external nofollow" rel="stylesheet" type="text/css" />
</head>
<body>
<!--文本框-->
<input type="text" id="rq"/>
<!--模态框-->
<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h4 class="modal-title" id="myModalLabel">日期</h4>
</div>
<div class="modal-body">
<!-- 内容-->
<!-- 三个下拉框-->
<select id="nian"></select>年
<select id="yue"></select>月
<select id="ri"></select>日
</div>
<div class="modal-footer">
<!--确定按钮加上事件,用来写点击事件-->
<button type="button" class="btn btn-primary" id="queding">确定</button>
</div>
</div><!-- /.modal-content -->
</div><!-- /.modal -->
</div>
</body>
</html>
主页的东西都完事了,来写js代码,js代码可以在script标签里写,但是为了清晰,且用于日后方便实用,新建js文件:
5.先让他的文本框里显示一下当前的时间吧:
来写:
//文本框内显示当前时间:
// 准备好:
$(document).ready(function(e){
// 来获取时间:
var date = new Date();
//获取年
var nian = date.getFullYear();
//获取月,记得加1
var yue = date.getMonth()+1;
//获取天:
var tian = date.getDate();
//打印,拼接字符串
$("#rq").val(nian+"-"+yue+"-"+tian);
});
记得在主页面引用哦!看图:
6.来写文本框的点击事件吧,让他点击文本框的时候弹出模态框:
//文本框点击事件:
$("#rq").click(function(){
// 手动打开模态框的方法:找到模态框的id,根据Bookstrap里面的方法
$('#myModal').modal('show');
// 执行三个方法
fnian();
fyue();
ftian();
})
这样当我点击文本框:看图:
7.点击确定的事件先不要加,因为还要传给他东西,先来写那三个方法吧:
// 写方法,
//加载年份的方法
function Fnian()
{
//先来取当前年份
var date = new Date();
var nian = date.getFullYear();
// 定义个变量来接收:
var str = "";
//for循环走起:
for(var i=nian-5;i<nian+6;i++)
{
//判断若是当前年份,设为value
if(i==nian)
{
str = str + "<option selected='selected' value='" + i + "'>" + i + "</option>";
}
else
{
//若不是,正常显示
str = str +"<option value='"+i+"'>"+i+"</option>";
}
}
$("#nian").html(str);
}
//加载月份的方法:
function Fyue()
{
var date = new Date();
//获取月,记得加1
var yue = date.getMonth()+1;
//先取当前月份:
var date = new Date();
var yue = data.getMonth()+1;
// 定义个变量来接收:
var str = "";
// for循环走
for(var i=1;i<13;i++)
{
//判断若是当前月份,设为value
if(i==yue)
{
str = str+"<option selected='selected' value='"+i+"'>"+i+"</option>";
}
else
{
//若不是,正常显示
str = str +"<option value='"+i+"'>"+i+"</option>";
}
}
$("#yue").html(str);
// document.getElementById("yue").innerHTML=str;
}
//加载天的方法
function Ftian()
{
//获取当天;
var date = new Date();
var tian = date.getDate();
//把月份与年份取过来,用于判断:
var nian = $("#nian").val();
var yue = $("#yue").val();
//设一个总数,判断完成后更改他就好
var zs = 31;
//判断来了!
if(yue==4||yue==6||yue==9||yue==11)
{
//若是4.6.9.11月,每月三十天
zs = 30;
}
else if(yue==2)
{
//若是2月,再判断,是否为闰年
if((nian%4==0 && nian%100!=0) || nian%400==0 )
{
//若是闰年,2月29天
zs = 29;
}
else
{
//否则2月为28天
zs = 28;
}
}
// for循环搞起
// 定义个变量来接收:
var str = "";
//for循环走起:
for(i=1;i<zs+1;i++)
{
//判断若是当天,设为value
if(i==tian)
{
str = str + "<option selected='selected' value='" + i + "'>" + i + "</option>";
}
else
{
//若不是,正常显示
str = str +"<option value='"+i+"'>"+i+"</option>";
}
}
$("#tian").html(str);
}
好。加载年份、月份、天的方法都写完了,上面已经执行了,
看下图:
8.再来写确定按钮的点击事件:
先给模态框里面的确定按钮添加上id吧
<button type="button" class="btn btn-primary" id="queding">确定</button>
设置好了id,去写事件:
//最后给确定按钮加点击事件
$("#queding").click(function(){
var nian = $("#nian").val();
var yue = $("#yue").val();
var tian = $("#tian").val();
$("#rq").val(nian+"-"+yue+"-"+tian);
$('#myModal').modal('hide');
})
点击关闭模态框,并传去数据;
完成图:
点击确定:
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!
# jquery日期选择器
# jquery
# 选择器
# jQuery移动端日期(datedropper)和时间(timedropper)选择器附源码下载
# jQuery之日期选择器的深入解析
# jQuery日期范围选择器附源码下载
# 文本框
# 模态
# 设为
# 来写
# 加载
# 若不是
# 正常显示
# 看图
# 当天
# 下拉框
# 来了
# 好了
# 让他
# 给他
# 就好
# 当我
# 五年
# 再来
# 弹出
# 做一个
相关文章:
济南网站制作的价格,历城一职专官方网站?
厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?
如何通过NAT技术实现内网高效建站?
建站之星2.7模板快速切换与批量管理功能操作指南
详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)
个人摄影网站制作流程,摄影爱好者都去什么网站?
如何通过虚拟机搭建网站?详细步骤解析
建站之星如何配置系统实现高效建站?
MySQL查询结果复制到新表的方法(更新、插入)
如何选择PHP开源工具快速搭建网站?
如何快速生成橙子建站落地页链接?
相册网站制作软件,图片上的网址怎么复制?
如何挑选高效建站主机与优质域名?
JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)
企业宣传片制作网站有哪些,传媒公司怎么找企业宣传片项目?
制作无缝贴图网站有哪些,3dmax无缝贴图怎么调?
建站DNS解析失败?如何正确配置域名服务器?
太平洋网站制作公司,网络用语太平洋是什么意思?
北京建设网站制作公司,北京古代建筑博物馆预约官网?
如何在局域网内绑定自建网站域名?
C++ static_cast和dynamic_cast区别_C++静态转换与动态类型安全转换
GML (Geography Markup Language)是什么,它如何用XML来表示地理空间信息?
制作网站怎么制作,*游戏网站怎么搭建?
深圳 网站制作,深圳招聘网站哪个比较好一点啊?
自助网站制作软件,个人如何自助建网站?
可靠的网站设计制作软件,做网站设计需要什么样的电脑配置?
如何通过IIS搭建网站并配置访问权限?
,南京靠谱的征婚网站?
定制建站流程解析:需求评估与SEO优化功能开发指南
西安制作网站公司有哪些,西安货运司机用的最多的app或者网站是什么?
高端云建站费用究竟需要多少预算?
b2c电商网站制作流程,b2c水平综合的电商平台?
中山网站推广排名,中山信息港登录入口?
高防网站服务器:DDoS防御与BGP线路的AI智能防护方案
如何用已有域名快速搭建网站?
如何快速上传自定义模板至建站之星?
建站之星客服服务时间及联系方式如何?
在线ppt制作网站有哪些,请推荐几个好的课件下载的网站?
南平网站制作公司,2025年南平市事业单位报名时间?
香港服务器租用每月最低只需15元?
常州自助建站费用包含哪些项目?
利用JavaScript实现拖拽改变元素大小
如何在Windows环境下新建FTP站点并设置权限?
魔方云NAT建站如何实现端口转发?
如何通过山东自助建站平台快速注册域名?
魔毅自助建站系统:模板定制与SEO优化一键生成指南
如何安全更换建站之星模板并保留数据?
如何在IIS中新建站点并配置端口与IP地址?
建站VPS选购需注意哪些关键参数?
Thinkphp 中 distinct 的用法解析
*请认真填写需求信息,我们会在24小时内与您取得联系。