Asp.net mvc 4 每7个事件重新创建一次表
因此,我使用jquery日历插件并创建了一个对我的组织更为友好的视图。当用户点击周视图并点击“打印此视图”按钮时,下面的编码工作得非常完美。但如果他们选择月视图并点击打印按钮,它会水平打印整个月。长话短说,我如何使这个日历板条箱每七个计数新的一行Asp.net mvc 4 每7个事件重新创建一次表,asp.net-mvc-4,razor,fullcalendar,Asp.net Mvc 4,Razor,Fullcalendar,因此,我使用jquery日历插件并创建了一个对我的组织更为友好的视图。当用户点击周视图并点击“打印此视图”按钮时,下面的编码工作得非常完美。但如果他们选择月视图并点击打印按钮,它会水平打印整个月。长话短说,我如何使这个日历板条箱每七个计数新的一行 <table width="100%" style="border: none"> <td style="border-style: none"> <table style="border: non
<table width="100%" style="border: none">
<td style="border-style: none">
<table style="border: none">
@for (int index = 0; index < Model.Count - 1; index++)
{
var calendarDate = Model[index];
<td style="vertical-align: top">
<div style="border: thin; border-style: solid; font-weight: bold">
@calendarDate.CalDate.ToLongDateString()
</div>
@foreach (var dayEvents in calendarDate.DateEvents)
{
<div style="border: thin; border-style: solid">
@dayEvents.Department<br />
@dayEvents.Doctor<br />
@dayEvents.Comments
</div>
}
</td>
}
</table>
</td>
</table>
@对于(int index=0;index
@dayEvents.Doctor
@dayEvents.评论
}
}
我可能有片刻的时间,它就在我眼前,但我伸出了手。您可以将您的模型项目分为7类:
var model = Enumerable.Range(0, 20).Select(x => new { Text = "item " + x });
var data = model
.Select((value, index) => new { Index = index / 3, Item = value })
.GroupBy(pair => pair.Index);
然后你可以这样做:
<table>
@foreach (var group in data)
{
<tr>
@foreach (var element in group)
{
<td>@element.Item.Text</td>
}
@for (int i = 0; i < 3 - group.Count(); i++)
{
<td>empty</td>
}
</tr>
}
</table>
@foreach(数据中的var组)
{
@foreach(组中的var元素)
{
@element.Item.Text
}
@对于(int i=0;i<3-group.Count();i++)
{
空的
}
}
请参见Darin Dimitrov在这篇文章中的回答:这是一种有效的方法,看起来相当干净。无论是在周视图还是月视图中,它都可以工作。这与您在原始答案上的方法非常相似。所以我也会给你荣誉
@{
int itemIndex = 0;
int colspan = 7;
}
<table class="printCalendarTable">
<tr style="vertical-align: top; font-weight: bold">
@foreach (var item in Model)
{
if (itemIndex != 0 && itemIndex % colspan == 0)
{
@:</tr><tr style="vertical-align: top; font-weight: bold">
}
<td>@item.CalDate.ToShortDateString()
<table>
@foreach (var ocEvent in item.DateEvents)
{
<tr><td>@ocEvent.Department</td></tr>
<tr><td>@ocEvent.Doctor</td></tr>
<tr><td>@ocEvent.Comments</td></tr>
}
</table>
</td>
itemIndex++;
}
</tr>
</table>
@{
int itemIndex=0;
int colspan=7;
}
@foreach(模型中的var项目)
{
if(itemIndex!=0&&itemIndex%colspan==0)
{
@:
}
@item.CalDate.ToShortDateString()的
@foreach(item.DateEvents中的变量ocEvent)
{
@ocEvent.部门
@ocEvent,医生
@ocEvent.评论
}
itemIndex++;
}
如果选择了周视图而不需要分组,那么这段代码将如何应用?您可以根据是否选择周视图,在if语句中组合两组代码(您的和我的)。