js日期联动示例

 更新时间:2014年05月02日 14:32:28   作者:  
这篇文章主要介绍了js实现的日期联动效果,调试需加入jquery文件,需要的朋友可以参考下
调试需加入jquery文件
复制代码 代码如下:

<!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">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script src="jquery.js"></script>
<script>
$(function(){
$('#year').change(function(){
if (ifLeapYear($(this).val()))
{
if ($('#month').val() == 2 && $('#day').children().length == 29)
{
$('#day').append('<option value="29">29</option>');
}
} else
{
if ($('#month').val() == 2 && $('#day').children().length == 30)
{
$('#day :last-child').remove();
}
}
});

$('#month').change(function(){
var thisValue = $(this).val();
var dayValue = $('#day').val();
var month1 = ['4','6','9','11'];
$('#day').html('<option value="">-请选择-</option>');
var day = '';
if (thisValue == '')
{
return false;
}
if ($.inArray(thisValue, month1) != -1)
{
day = setDay(30);
$('#day').append(day);
} else if ($(this).val() == '2')
{
if ($('#year').val() != '' && ifLeapYear($('#year').val()))
{
day = setDay(29);
} else
{
day = setDay(28);
}
$('#day').append(day);
} else
{
day = setDay(31);
$('#day').append(day);
}
$('#day').find('option[value='+dayValue+']').attr('selected',true);
});
})
function setDay(day)
{
var dayInfo = '';
for (var i=1; i<=day; i++)
{
dayInfo += '<option value="' + i +'">' + i+ '</option>';
}
return dayInfo;
}
function ifLeapYear(year)
{
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)
{
return true;
} else
{
return false;
}
}
</script>
<select id="year"><option value="">-请选择-</option>
<?php for ($i=1980;$i<2012;$i++){ ?>
<option value="<?php echo $i ?>"><?php echo $i ?></option>
<?php } ?>
</select>年
<select id="month"><option value="">-请选择-</option>
<?php for ($i=1;$i<=12;$i++){ ?>
<option value="<?php echo $i ?>"><?php echo $i ?></option>
<?php } ?>
</select>月
<select id="day"><option value="">-请选择-</option></select>日

相关文章

  • JavaScript中for of和for in的区别详解

    JavaScript中for of和for in的区别详解

    对于初学者,我们或许只知道无论是for of还是for in他们都有一个功能那就是遍历,至于具体的细节或许我们不是很清楚,那么接下来我们就来详细的区分一下for of和for in他们之间的不同点和相同点,需要的朋友可以参考下
    2023-06-06
  • javascript for循环性能测试示例

    javascript for循环性能测试示例

    这篇文章主要介绍了javascript for循环性能测试,结合实例形式分析了javascript使用for循环遍历数组的三种常用方法及对应的时间消耗,总结javascript使用for循环遍历数组的相关操作技巧,需要的朋友可以参考下
    2019-08-08
  • JavaScript实现随机码的生成与校验

    JavaScript实现随机码的生成与校验

    这篇文章主要为大家详细介绍了JavaScript实现随机码的生成与校验,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-04-04
  • 利用r.js打包模块化的javascript文件方法示例

    利用r.js打包模块化的javascript文件方法示例

    这篇文章主要给大家介绍了利用r.js打包模块化的javascript文件的相关资料,文中介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面来跟着小编一起看看吧。
    2017-06-06
  • 浅谈Vue3.0之前你必须知道的TypeScript实战技巧

    浅谈Vue3.0之前你必须知道的TypeScript实战技巧

    这篇文章主要介绍了浅谈Vue3.0之前你必须知道的TypeScript实战技巧,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • js变量声明var使用与不使用的区别详解

    js变量声明var使用与不使用的区别详解

    今天小编就为大家分享一篇关于js变量声明var使用与不使用的区别详解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-01-01
  • 基于JS抓取某高校附近共享单车位置 使用web方式展示位置变化代码实例

    基于JS抓取某高校附近共享单车位置 使用web方式展示位置变化代码实例

    这篇文章主要介绍了基于JS抓取某高校附近共享单车位置 使用web方式展示位置变化代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • 模拟弹出窗口效果,关闭层之前,不能选择后面的页内容

    模拟弹出窗口效果,关闭层之前,不能选择后面的页内容

    模拟弹出窗口效果,关闭层之前,不能选择后面的页内容...
    2007-02-02
  • javascript设计模式 – 工厂模式原理与应用实例分析

    javascript设计模式 – 工厂模式原理与应用实例分析

    这篇文章主要介绍了javascript设计模式 – 工厂模式,结合实例形式分析了javascript工厂模式基本概念、原理、定义、应用场景及相关操作注意事项,需要的朋友可以参考下
    2020-04-04
  • 微信小程序 如何保持登录状态

    微信小程序 如何保持登录状态

    这篇文章主要介绍了微信小程序 如何保持登录状态,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08

最新评论