.net 根据html的input type=“week“控件的值获取星期一和星期日的日期

初始化 "week" 控件值:

cs 复制代码
//MVC部分
public ActionResult WeeklyList()
{
    int weekNo = new GregorianCalendar().GetWeekOfYear(System.DateTime.Now, System.Globalization.CalendarWeekRule.FirstDay, DayOfWeek.Sunday);
    string DefaultWeek = DateTime.Now.Year + "-W" + weekNo;//2024-W42
    ViewBag.DefaultWeek = DefaultWeek;//传值到html

    return View();
}

//html部分
<input type="week" id="txt_week" class="my-css" value="@ViewBag.DefaultWeek" />

获取 "week" 控件所选中的星期一和星期日的值

cs 复制代码
        $(function () {
            $("#btnSearch").click(function () {
                var weekPicker = document.getElementById('txt_week');//type=week控件对象
                var dateString = weekPicker.value;//控件值格式为: 'YYYY-WW',如:2024-W42
                var year = parseInt(dateString.substr(0, 4), 10);//截取字符串"年"的部分:2024
                var week = parseInt(dateString.substr(6, 2), 10);//截取字符串"第几周"的部分:42

                //计算日期
                var jsDate = new Date(year, 0, (week - 1) * 7);//生成日期
                var dayOfWeek = jsDate.getDay();
                var dayOffset = dayOfWeek === 1 ? 0 : 1 - dayOfWeek;
                
                var monday = new Date(jsDate.setDate(jsDate.getDate() + dayOffset + 1));//星期一日期
                var sunday = new Date(jsDate.setDate(monday.getDate() + 6));//星期日日期(星期一+6天)

                console.log('星期一: ' + monday.toISOString().substr(0, 10));
                console.log('星期日: ' + sunday.toISOString().substr(0, 10));

            });
        });

实际效果:

说明:

①我选中了week控件的:第42周(即2024年的第42个周,值为:2024-W42,格式为:yyyy-WW)

②截取字符串,获得年:2024,和年度第几周:42,开始计算日期,见js部分

③计算获得:第42周的,星期一是"2024-10-14",星期日是"2024-10-20"

④传递着两个日期值到MVC后台,对数据库进行日期范围的SQL查询


验证:

相关推荐
aixingpan13 小时前
aixingpan.cn API开发文档:api_docs_bichart_common2接口指南
前端·php
super_Omni13 小时前
text/PDF/Word → 解析成纯文本 → 分词 → 词表匹配 → 加权打分 → 低于阈值
前端·chrome
阶进遐13 小时前
浏览器工具自制指南·对话导出(3):消息池设计
前端
SameX13 小时前
HarmonyOS 用 relationalStore 做阅读统计 App —— 5 张表背后的 5 个 schema 决策
前端
LV技术派13 小时前
【成为 AI Native Builder · 02】什么是 AI Native Builder:一个人 + AI,交付完整闭环
前端·程序员·ai编程
#麻辣小龙虾#13 小时前
网页布局css中flex+margin的组合布局技巧
开发语言·前端·javascript
叼烟扛炮14 小时前
Linux 学习笔记(四十五):Web 安全基石——Cookie、Session 与 HTTPS 原理解析
linux·前端·网络·笔记·学习·tcp/ip·安全
zhippt_101414 小时前
教师做课件太耗时?AI生成PPT工具与图转PPT实测梳理
人工智能·html·powerpoint
环境栈笔记14 小时前
指纹浏览器安卓怎么用?从运行位置到功能验收,先把三种方案分清
前端·人工智能·后端·自动化
计算机魔术师14 小时前
Anthropic IPO 招股文件披露近 9000 亿美元隐性债务
前端