Javascript jQuery默认选择的加载年份和月份

Javascript jQuery默认选择的加载年份和月份,javascript,jquery,Javascript,Jquery,我正在尝试通过当前验证在页面加载中自动选择当前月份和年份,即当前选择的年份将仅在月份选择字段中显示当前月份和过去月份 我尝试了.load()函数,但事件侦听器在页面加载中不起作用 var currentYear=new Date().getFullYear(); var currentMonth=新日期().getMonth(); var cascadedDropDownMonthId=“#dropDownYearMonth”; //将过去10年添加到年度下拉列表 对于(var i=curre

我正在尝试通过当前验证在页面加载中自动选择当前月份和年份,即当前选择的年份将仅在月份选择字段中显示当前月份和过去月份

我尝试了.load()函数,但事件侦听器在页面加载中不起作用

var currentYear=new Date().getFullYear();
var currentMonth=新日期().getMonth();
var cascadedDropDownMonthId=“#dropDownYearMonth”;
//将过去10年添加到年度下拉列表
对于(var i=currentYear;i>currentYear-10;i--)
{
$(“#dropDownYear1”).append(“”+i.toString()+“”);
}
//如果选择无效,则禁用月份下拉列表。
//$(cascadedDropDownMonthId).prop(“disabled”,true);
$(“#dropDownYear1”)。更改(函数(){
var currentSelectedValue=$(this.val();
如果(currentSelectedValue==“-1”)
{
$(cascadedDropDownMonthId).prop(“disabled”,true);
}
其他的
{
$(cascadedDropDownMonthId).prop(“已禁用”,false);
//从下拉列表中获取当前年份并转换为整数以执行数学运算
var currentSelectedYear=parseInt($(this.val());
//由于Javascript月的索引是从0到11,所以TotalMonth是11而不是12
var总月数=11;
如果(currentSelectedYear==currentYear){
totalMonths=当前月份;
}
var monthNames=[“一月”、“二月”、“三月”、“四月”、“五月”、“六月”、“七月”、“八月”、“九月”、“十月”、“十一月”、“十二月”];
//清空月份下拉列表以清除最后的值
$(cascadedDropDownMonthId).empty();
//$(cascadedDropDownMonthId).append('-Month-');
//追加当前有效月份

对于(var month=0;month您只需使用
文档准备
功能加载当前
月份
年份

您需要将您的
当前年度月份
包装到一个函数中,并在
DOM
ready上调用该函数

在该函数中,
loadMonths
我们需要传递
当前月份
,然后检查月份名称的长度,并仅追加
当前
年份的剩余月份

在您的
onchange
函数中,我们只需检查所选
年份是否为
current
year,我们可以调用
loadMonths()
功能,仅显示当前年度剩余的
月份
,否则,如果年份不是
当前的
,则所有月份将
附加到月份下拉列表中

编辑:默认情况下,当前月份将根据需要在加载时显示

演示:

var currentYear=new Date().getFullYear();
var currentMonth=新日期().getMonth();
var cascadedDropDownMonthId=“#dropDownYearMonth”;
var monthNames=[“一月”、“二月”、“三月”、“四月”、“五月”、“六月”、“七月”、“八月”、“九月”、“十月”、“十一月”、“十二月”];
//添加当前加载月份
功能加载月份(当前){
//将过去10年添加到年度下拉列表
对于(var i=currentYear;i>currentYear-10;i--){
$(“#dropDownYear1”).append(“”+i.toString()+“”);
}
//月份

对于(i=0;i使用页面加载事件侦听器的代码在哪里?@kmoser,我想我说过我尝试了.load()事件,但没有成功。@kmoser
$(“#dropDownYear1”).load(函数()
will不显示任何月中月选择器,但在更改时显示月中月选择器2020年的月份应为当前月份和过去月份,但它显示未来月份,但我的问题是,如果不选择第一个月,我可以选择当前月份吗?默认加载时?@rock-Sure-请查看更新的答案。完全按照您的意愿工作D