学生选课系统-学年学期选择器,根据入学年份自动计算当前学期

本文介绍了一个JavaScript函数,用于根据当前日期和学号自动计算并加载学期数据,同时展示了如何在Vue环境中使用级联选择器展示计算出的学年和学期选项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实现效果,一进入自动加载最近学期数据
在这里插入图片描述
入学年份是取学号中入学年份对应字段

js

//计算学期
function getTerm(no){	//no为学号
    let date=new Date;	//当前时间
    let startYear = parseInt(no.toString().slice(0, 4));//取学号中入学年份
    let year=date.getFullYear();	//现在年份
    let month=date.getMonth()+1;    //getMonth()获取当前月份(0-11,0代表1月)
    let term = (year - startYear)*2 + parseInt(month/9);	//学期
    let yTermValue = year - startYear + parseInt(month/9); //计算学年,如2018-2019学年两个学期值都是2018,方便写入选择器
    console.log(year+'年'+month+'月第'+ term+'学期');

    let termYear ={
        term: term>8?8:term, //学期,
        year: startYear,    //开学年份
        now: year,  //现在年份
        yTermValue: yTermValue  //选择的年度
    };
    return termYear;
}

html实现

 <el-cascader
       :options="yTermOptions"
       v-model="selectYearTerm"
       @change="changeTerm"
  ></el-cascader>

vue data定义

selectYearTerm:['year'+termYear.yTermValue,termYear.term],
yTermOptions:[
                        {
                            value: 'year1',
                            label: termYear.year+'-'+(termYear.year+1)+'学年',
                            children: [{
                                value: 1,
                                label: '第一学期',
                            },{
                                value: 2,
                                label: '第二学期',
                            }],
                        }, {
                            value: 'year2',
                            label: (termYear.year+1)+'-'+(termYear.year+2)+'学年',
                            children: [{
                                value: 3,
                                label: '第一学期',
                            },{
                                value: 4,
                                label: '第二学期',
                            }],
                        }, {
                            value: 'year3',
                            label: (termYear.year+2)+'-'+(termYear.year+3)+'学年',
                            children: [{
                                value: 5,
                                label: '第一学期',
                            },{
                                value: 6,
                                label: '第二学期',
                            }],
                        }, {
                            value: 'year4',
                            label: (termYear.year+3)+'-'+(termYear.year+4)+'学年',
                            children: [{
                                value: 7,
                                label: '第一学期',
                            },{
                                value: 8,
                                label: '第二学期',
                            }],
                        },
                    ],
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值