比较验证器两个日期

时间:2011-11-13 22:40:33

标签: asp.net comparevalidator

我有两个标签和两个文本框,一个比较验证器和一个按钮。

我需要它来比较两个日期(租赁日期,返回日期)以及租赁日期小于或等于返回日期的时间是相同的。没有验证信息。

当租赁日期小于返回日期时,显示输入错误消息。

比较验证器已设置为:

controltocompare : txtrental,
controltovalidate: txtreturndate,
operator :greater than equal,
type:date,
errormessage: return date must be greater or equal than rental date,

我不知道如何让btn显示它?

3 个答案:

答案 0 :(得分:0)

您需要将按钮的属性“CausesValidation”设置为“true”,以触发其点击验证。

答案 1 :(得分:0)

确保CompareValidatorrunat="server"

答案 2 :(得分:0)

  1. 创建一个显示消息的方法。

    private void AlertBox(string Msg)     {         string s =“alert('”+ Msg +“')”;         ScriptManager.RegisterStartupScript(this.Page,this.GetType(),“ckey”,s,true);     }

  2. 找到要验证的代码并抛出警告信息。

                if (!String.IsNullOrEmpty(txtrental.Text) && !String.IsNullOrEmpty(txtreturndate.Text))
                        {
                            DateTime ssSD = Convert.ToDateTime(txtrental.Text);
                            DateTime qsED = Convert.ToDateTime(txtreturndate.Text);
                            int chktxtfd1_sd = ssSD.CompareTo(qsSD);
    
                            if ((chktxtfd1_sd == 0 || chktxtfd1_sd == -1) )
                            {
                                //do something bcoz condition is true
    
                            }
                            else
                            {
    
                                lvflag = false;
                                AlertBox("date must be greater or equal than rental date");
    
                            }
                        }
    
  3. 如果您发现它有用,请将其标记为您的答案,否则请告诉我......