2010-02-13 8 views
0

travail sur Asp.Net vs 08. Voici mon codeAsp.Net Date de fin supérieure à la date de début

<asp:TextBox ID="txtSTART_DATE" runat="server"></asp:TextBox> 
    <cc1:PopupControlExtender ID="txtSTART_DATE_PopupControlExtender" runat="server" CommitProperty="value" 
      CommitScript="e.value += '';" PopupControlID="pnlSTART_DATE" 
      Position="Bottom" TargetControlID="txtSTART_DATE"> 
      </cc1:PopupControlExtender> 

      <asp:TextBox ID="txtEND_DATE" runat="server" 
     ontextchanged="txtEND_DATE_TextChanged"></asp:TextBox> 
    <cc1:PopupControlExtender ID="txtEND_DATE_PopupControlExtender" runat="server" CommitProperty="value" 
      CommitScript="e.value += '';" PopupControlID="pnlEND_DATE" 
      Position="Bottom" TargetControlID="txtEND_DATE"> 
      </cc1:PopupControlExtender> 

syntaxe C# est

protected void dtpSTART_DATE_SelectionChanged(object sender, EventArgs e) 
{ 
    AjaxControlToolkit.PopupControlExtender.GetProxyForCurrentPopup(this.Page).Commit(dtpSTART_DATE.SelectedDate.ToString("dd MMM yyyy"));//Set the value 
} 

protected void dtpEND_DATE_SelectionChanged(object sender, EventArgs e) 
{ 
    AjaxControlToolkit.PopupControlExtender.GetProxyForCurrentPopup(this.Page).Commit(dtpEND_DATE.SelectedDate.ToString("dd MMM yyyy"));//Set the value 
} 

veulent comparer la date de début à la fin date.Vérifiez cette date de fin supérieure à la date de début et à la date d'aujourd'hui.Comment vérifier la valeur?

+0

Ne posez pas la même question plusieurs fois simplement parce que vous n'avez pas encore reçu de réponse. Sois patient. – Gumbo

Répondre

2

Vous pouvez utiliser le comparateur de prix asp.net, par ex. Cela ne fera pas de popup, mais si vous êtes juste après un validateur, cela devrait être OK.

La comparaison validateur est en fait très puissant, par exemple, vous pouvez vérifier le type de données de l'argument, donc j'utiliser quelque chose comme ceci:

<asp:TextBox ID="txtSTART_DATE" runat="server" /> 
<asp:CompareValidator ID="chkStartIsDate" runat="server" Display="Dynamic" 
    Operator="DataTypeCheck" Type="Date" ControlToValidate="txtSTART_DATE" 
    ErrorMessage="You must supply a valid start date" /> 
<asp:TextBox ID="txtEND_DATE" runat="server" /> 
<asp:CompareValidator ID="chkEndIsDate" runat="server" Display="Dynamic" 
    Operator="DataTypeCheck" Type="Date" ControlToValidate="txtEND_DATE" 
    ErrorMessage="You must supply a valid end date" /> 
<asp:CompareValidator ID="cmpStartAndEndDates" runat="server" Display="Dynamic" 
    Operator="GreaterThan" ControlToValidate="txtEND_DATE" ControlToCompare="txtSTART_DATE" 
    ErrorMessage="The end date must be after the start date" /> 
0
<asp:TextBox ID="txtStartDate" runat="server" /> 
<asp:TextBox ID="txtEndDate" runat="server" /> 
<asp:CompareValidator ID="cvStartEnd" Operator="GreaterThan" Type="Date" 
    ControlToValidate="txtEndDate" ControlToCompare="txtStartDate" 
    ErrorMessage="End date must be greater than start date!" runat="server"/> 

Assurez-vous de définir la propriété Type="Date" sinon, il ferait une chaîne de comparaison et donnerait des résultats erronés.

Questions connexes