我有一个使用EF的ASP.NET MVC 4项目。在我的(创建)视图中,我想在EditorFor旁边显示当前年份周数的日期。
我有一个帮手:
@model Helios.Models.tablename
@helper Week(DateTime dt)
{
CultureInfo ciCurr = CultureInfo.CurrentCulture;
int weekNum = ciCurr.Calendar.GetWeekOfYear(dt, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Monday);
@weekNum
}
...
<div class="editor-field">
@Html.TextBoxFor(model => model.date_birth, new {onchange="?"}) @Week(date_birth?)
</div>
我不确定这是否可以在Razor中完成,但如果我更改日期,我需要更新周数
问:如何显示周数。在datepicker旁边,如果日期改变了,请更新它吗?
答案 0 :(得分:2)
这是一篇关于计算周数的文章。
How can I calculate/find the week-number of a given date?
但这一切都取决于您是否计划在服务器上设置它,或者客户端是否能够更改日期。如果客户端可以更改日期,则需要使用javascript。
function(d) {
var day = d.getDay();
if(day == 0) day = 7;
d.setDate(d.getDate() + (4 - day));
var year = d.getFullYear();
var ZBDoCY = Math.floor((d.getTime() - new Date(year, 0, 1, -6)) / 86400000);
return 1 + Math.floor(ZBDoCY / 7);
}
来自:http://jquery142.blogspot.se/2010/04/how-to-get-week-number-for-date-in.html