62,271
社区成员
发帖
与我相关
我的任务
分享
<div>
<asp:TextBox ID="txtDateTime" runat="server"></asp:TextBox><asp:RequiredFieldValidator
ID="valdDateTime" runat="server" ErrorMessage="不能为空"
ControlToValidate="txtDateTime" Display="Dynamic" Font-Size="12px"></asp:RequiredFieldValidator><asp:RegularExpressionValidator
ID="valeDateTime" runat="server" ErrorMessage="时间不合法"
ControlToValidate="txtDateTime" Display="Dynamic" Font-Size="12px"
ValidationExpression="^((((1[6-9]|[2-9]\d)\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})-0?2-(0?[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29))$"></asp:RegularExpressionValidator><br />
<asp:Button ID="btnSumbit" runat="server" Text="验证" onclick="btnSumbit_Click" />
<asp:Label ID="lblMessage" runat="server"></asp:Label>
</div>
protected void btnSumbit_Click(object sender, EventArgs e)
{
DateTime checkTime;
DateTime dtNow = DateTime.Now; //当前时间
DateTime startWeek;
DateTime endWeek;
//如果验证通过
if (IsValid)
{
checkTime = Convert.ToDateTime(txtDateTime.Text); //用户输入的时间
startWeek = Convert.ToDateTime(dtNow.AddDays(1 - Convert.ToInt32(dtNow.DayOfWeek.ToString("d"))).ToString("yyyy-MM-dd 00:00:00")); //本周周一
endWeek = Convert.ToDateTime(startWeek.AddDays(6).ToString("yyyy-MM-dd 23:59:59")); //本周周日
if (checkTime >= startWeek && checkTime <= endWeek)
{
lblMessage.Text = "时间是在本周内";
}
else
{
lblMessage.Text = "时间不是在本周内";
}
}
}
static bool isInCurrentWeekday(DateTime dt)
{
DateTime now = DateTime.Now;
int st = now.Day - Convert.ToInt32(now.DayOfWeek.ToString("d")) + 1;
if (dt.Day >= st && dt.Day <= st + 7)
{
return true;
}
return false;
} public static bool IsThisWeek(DateTime someDate)
{
DateTime dt = DateTime.Now;
DateTime nowMon = dt.AddDays(1 - Convert.ToInt32(dt.DayOfWeek.ToString("d")));
TimeSpan ts = someDate - nowMon;
if (ts.Days >= 0 && ts.Days < 7)
{
return true;
}
else
{
return false;
}
}