簡體   English   中英

如何檢查兩個日期的兩個文本框

[英]How do I check two textboxes for two dates

一個具有txtDateReceived,第二個具有txtVendorPackDate。 在插入將添加記錄之前,我必須檢查txtDateReceived是否正確,然后檢查txtVendorPackDate。 我嘗試使用TextChanged事件。

protected void txtVendorPackDate_TextChanged(object sender, EventArgs e)
{
    DateTime fromDate = DateTime.MinValue;
    DateTime toDate = DateTime.MaxValue;
    bool parseResultMin = DateTime.TryParse(txtVendorPackDate.Text, out fromDate);
    bool parseResultMax = DateTime.TryParse(txtDateReceived.Text, out toDate);
    if (toDate < fromDate)
    {
        txtVendorPackDate.Text = "";
        lblDateExpired.Visible = true;
        lblDateExpired.Text = "Selected date is incorrect, please enter correct data.";
        txtVendorFatPerc.Focus();
    }

    double expired = toDate.Subtract(fromDate).TotalDays;

    if (expired >= 60)
    {

        lblDateExpired.Text = "Date Expired " + expired + " days after pack day!!!" 
        lblDateExpired.Visible = true;
    }  
} 

我如何從客戶端不使用控件驗證來做到這一點。

嘗試這個

if (!parseResultMin || !parseResultMax || toDate < fromDate)

在您的代碼中,如果兩個日期均無效,則toDatefromDate都將為DateTime.MinValue ,因此表達式toDate < fromDate不會為true。

您可以使用CompareValidator控件來檢查供應商包裝日期是否少於收到的日期。 如果兩個字段都是必需的,則還可以使用RequiredFieldValidator。 我將使用RequiredFieldValidators和CompareValidators的組合。

每個文本框都有一個RequiredFieldValidator,以確保用戶輸入一個值。 每個文本框都有一個CompareValidator,以確保輸入的值是日期類型。 一個CompareValidator來確保供應商裝箱日期早於收到日期。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM