C# 检查字符串日期是否为星期一
我有一个表单,它有一个文本框,用户可以从日期选择器中选择并输入日期。我需要检查选定的日期是否在星期一 我现在的代码如下C# 检查字符串日期是否为星期一,c#,asp.net,C#,Asp.net,我有一个表单,它有一个文本框,用户可以从日期选择器中选择并输入日期。我需要检查选定的日期是否在星期一 我现在的代码如下 string dateInput = txtStartDate.Text; DateTime dt = Convert.ToDateTime(dateInput); DayOfWeek today = dt.DayOfWeek; if (today != DayOfWeek.Monday) { Console.WriteLine("Day is not a monda
string dateInput = txtStartDate.Text;
DateTime dt = Convert.ToDateTime(dateInput);
DayOfWeek today = dt.DayOfWeek;
if (today != DayOfWeek.Monday)
{
Console.WriteLine("Day is not a monday");
}
当我运行表单并选择非星期一的日期时,不会显示任何消息。我不确定我是否将其放在javascript或c函数中,也不确定代码是否正确。任何想法和评论都将不胜感激。将您的代码更改为:
string dateInput = txtStartDate.Text;
DateTime dt = Convert.ToDateTime(dateInput);
DayOfWeek today = dt.DayOfWeek;
if (today != DayOfWeek.Monday)
{
MessageBox.Show("Day is not a monday");
}
你可以试试这个代码
this.ShowMessage("Day is not a monday", "red");
我能够用我的原始代码减去函数中的writeline来处理这个问题,这个函数在文本更改时被调用。我做了一个自动回复,然后使用了一个隐藏的面板,里面有一条警告信息。如果验证不正确,它将取消隐藏面板并显示消息,或者将其隐藏
我不知道这是否是最好的选择,所以如果其他人有更好或更干净的解决方案,我会尝试一下。谢谢大家的建议 现在,有两种方法可以实现这一点 调用JS标记以显示警报 创建自定义警报框并显示在代码隐藏中 JavaScript警报
Console.WriteLine用于控制台输出,而不是windows窗体或web窗体。根据您使用的堆栈,有多种显示消息的方式,您选择哪种方式取决于您希望在何处进行验证。在web应用程序中,通常使用javascript进行基本验证,然后再在服务器端进行验证。您还可以有一个POST web方法,该方法返回错误结果badrequest+验证错误,或者您可能希望在web表单中使用类似于提交处理程序的内容,然后将错误文本写入标签。。。有很多方法可以做到这一点。看起来这是可行的,但我认为我们需要更多的背景。这是在onload事件、验证触发器或其他地方吗?是的,需要更多信息。它是winforms、webforms还是像MVC这样像样的东西它使用哪个日期选择器?有几种可供选择,包括基于jQuery的。我想我需要一个函数,在输入时验证日期是否在星期一。这并不意味着表单无效,只是一条警告消息。不确定最好的方法,但我认为javascript可能是答案,但不确定如何做到最好。MessageBox是windows窗体特有的。该问题已标记为asp.net。代码只鼓励回答。请看。我确实尝试了js警报,效果很好。我最终做的有点不同,但我保留了代码以备将来参考。非常感谢你的想法。不客气,你也可以将答案标记为已被接受,因为这将有助于为社区中的其他人提供参考。很好的一天!!非常感谢,先生!!
using System;
using System.Web.UI;
public partial class CheckMonday : Page
{
protected void Page_Load(object sender, EventArgs e)
{
CheckDate("Invalid Date");
}
private void CheckDate(string message)
{
string dateInput = txtStartDate.Text;
DateTime dt = Convert.ToDateTime(dateInput);
DayOfWeek today = dt.DayOfWeek;
if (today != DayOfWeek.Monday)
{
Response.Write("<script>alert('" + message + "')</script>");
}
}
}
<div runat="server" id="AlertBox" class="alertBox" Visible="false">
<div runat="server" id="AlertBoxMessage"></div>
<button onclick="closeAlert.call(this, event)">Ok</button>
</div>
using System;
using System.Web.UI;
public partial class CheckMonday : Page
{
protected void Page_Load(object sender, EventArgs e)
{
CheckDate("Invalid Date");
}
private void CheckDate(string message)
{
string dateInput = txtStartDate.Text;
DateTime dt = Convert.ToDateTime(dateInput);
DayOfWeek today = dt.DayOfWeek;
if (today != DayOfWeek.Monday)
{
MessageBoxShow(message);
}
}
private void MessageBoxShow(string message)
{
this.AlertBoxMessage.InnerText = message;
this.AlertBox.Visible = true;
}
}