现在我正在尝试创建一个日历类型的网站,现在我有两件事我需要通过才能继续,坦率地说不知道怎么做,如果有的话是一种方法。
首先,有没有办法将星期(星期一,星期二......)与不同的日期排成一行,还是每次需要硬编码?
其次,由于我使用for循环创建日期,是否有一种方法可以让每个日期的“编辑”按钮向表单发送一个ID,让它知道他们将提醒放在哪个日期?
创建日期的代码:
<%
var days = DateTime.DaysInMonth(2015, 11);
for (int i = 1; i < days; i++)
{
Response.Write("<div class='week'>");
Response.Write("<ul>");
Response.Write("<li>");
Response.Write(i);
Response.Write("<a href='WebForm1.aspx?setReminder=1'> <img src='editIcon.png' alt='Set reminder'> </a>");
if (Request["reminderForm"] == "hiddenValue")
{
Response.Write(Request["reminderName"]);
}
Response.Write("</li>");
Response.Write("</ul>");
Response.Write("</div>");
}
var setReminder = Request["setReminder"];
if(setReminder != null) {
%>
..以及您自行设置提醒的表单:
<h3>Set a reminder/event</h3>
<form method="POST" action="WebForm1.aspx">
<input type="hidden" name="reminderForm" value="hiddenValue" />
Event name: <input type="text" name="reminderName" /> <br />
Event date: <input type="text" name="reminderDate" /> <br />
<button type="submit" name="submit">Set</button> <br />
</form>
<% } %>
答案 0 :(得分:0)
回答你的第一个问题。如果您在选定的月份中每天都使用DateTime,那么您可以更改DateTimeFormat并指定您想要的样子。
首先,有没有办法排列工作日(星期一, 星期二..)与不同的日期,或它是否需要硬编码 每一次?
例子可以在这里找到:
https://msdn.microsoft.com/en-us/library/8kb3ddd4%28v=vs.110%29.aspx
如果使用.ToShortDateTime()函数排列DateTime对象,则可以在括号中为该格式添加字符串。
&#34; DDDD&#34; = 2009-06-15T13:45:30 - &gt;星期一(en-US)
这将为您提供当天的名称。
我不确定你的第二个问题,但我希望到目前为止这有帮助。
以下是关于如何获得工作日的简单示例:
public void Test()
{
int month = 11;
int year = 2015;
int days = DateTime.DaysInMonth(year, month); //This will give us days = 30
for (int i = 1; i < days; i++)
{
string dayteTime = new DateTime(year, month, i).ToString("D");
//This will create the following Output:
//Sunday, 1. November 2015
//Monday, 2. November 2015
//.... this can be added to a list or how ever you need the days.
}
}