2012-02-23 49 views
1

我需要让日历控件在当前日期后36小时开始。我会怎么做?我可以开始将asp.net的日历控件作为未来日期吗?

我有一个表格,要求将来的日期必须至少比当前日期至少36小时,以便相关工作人员能够完成任务。

编辑:谢谢大家帮助我的问题。我已经创建了一个解决方案,可以让我检查值并保留表格的处理:

Protected Sub calPickupDate_SelectionChanged(sender As Object, e As System.EventArgs) Handles calPickupDate.SelectionChanged 
     If calPickupDate.SelectedDate < Today.AddHours(36) Then 
      ASPNET_MsgBox("You must leave at least 36 hours for procesing of your order.") 
      txtPickupDate.Text = "" 
     Else 
      txtPickupDate.Text = calPickupDate.SelectedDate.ToString("MM/dd/yyyy") 
     End If 
    End Sub 

那么,我该如何解决这个问题呢?

+0

我应该澄清我的问题。是的,我正在谈论日期选择器控制。我有一个文本框,禁用了今天的日期。我希望日期选择器的日期在文本框中的日期后36小时开始。有一个过程要求填写表单的人员在要求的产品准备好之前至少等待这段时间。 – tahdhaze09 2012-02-23 21:44:45

+1

你应该把这个答案归功于milter。他的回答正是你所要求的,即使你最终决定进行服务器端验证。 – therealmitchconnors 2012-03-06 19:11:42

+0

@therealchchconnors - 你说得对。这是我的解决方案的基础,完美的工作。 – tahdhaze09 2012-03-07 21:04:25

回答

4
Dim DateTimePicker As New DateTimePicker 
    DateTimePicker.MinDate = Date.Now.AddHours(36) 
    DateTimePicker.Value = Date.Now.AddHours(36) 
+0

谢谢,斜接!做得好! – tahdhaze09 2012-03-07 21:05:18

3

我假设你的意思是日期选择器类型的“日历”,而不是日历。如果是这样,你正在处理数据验证问题。

有多种验证输入的方法。最快的只是服务器端。如果用户选错了日期,你告诉他,他可以选择广告,直到他得到线索。不是最好的用户界面,但它的工作原理。

由于数据在一个文本框结束了,你可以在文本框设置Javascript删除错误的日期,并显示一个“错误”标签中包含“日期/时间必须是X”的消息。如果你可以使用AJAX,有一些漂亮的样本here

4

请在您的表单加载下面的代码。

calPickupDate.MinDate = Date.Now.AddHours(36) 

希望这会帮助你。

相关问题