Member 12324523 Ответов: 1

Как я могу отобразить ошибку msg, если от даты и до даты больше сегодняшней даты и от даты должно быть меньше сегодняшней даты


Я публикую полный код aspx чтобы показать что это мой код главное в этом коде от даты и до даты я не должен позволять пользователю вводить от даты больше чем до даты также я не должен позволять от даты и до даты не больше чем до сегодняшней даты мне нужно отображать сообщения меток Пользователю если от даты больше чем до даты и от даты и до даты не должно быть больше чем до сегодняшней даты

<%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="Home.aspx.cs" Inherits="Home1" %>
<%@ Register Namespace="AjaxControlToolkit" Assembly="AjaxControlToolkit" tagPrefix="ajax" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">
    <script src="Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>
    <script src="Scripts/jquery.dynDateTime.min.js" type="text/javascript"></script>
    <script src="Scripts/calendar-en.min.js" type="text/javascript"></script>
    <link href="Styles/calendar-blue.css" rel="stylesheet" type="text/css" />
    <script type="text/javascript">
          $(document).ready(function () {
              $("#<%= txtTAFromDate.ClientID %>").dynDateTime({
                showsTime: true,
                ifFormat: "%m/%d/%y %H:%M",
                daFormat: "%l;%M %p, %e %m,  %Y",
                align: "BR",
                electric: false,
                singleClick: true,
                displayArea: ".siblings('.dtcDisplayArea')",
                button: ".next()"
              });
              $("#<%= txtTAToDate.ClientID %>").dynDateTime({
                  showsTime: true,
                  ifFormat: "%m/%d/%y %H:%M",
                  daFormat: "%l;%M %p, %e %m,  %Y",
                  align: "BR",
                  electric: false,
                  singleClick: true,
                  displayArea: ".siblings('.dtcDisplayArea')",
                  button: ".next()"
              });
        });
    </script>
  <ajax:ToolkitScriptManager ID="scriptmanager1" runat="server">
</ajax:ToolkitScriptManager>
    <div style="margin-left:10%;margin-top:03%;height:450px">
     <ajax:TabContainer ID="TabContainer1" runat="server"  CssClass="fancy fancy-green">
          <ajax:TabPanel ID="tbpnluser" runat="server" >               
               <HeaderTemplate>Project wise details & Status </HeaderTemplate>
                  <ContentTemplate>
                  <asp:Panel ID="pnlPW" runat="server">
                       <h4><center> Project wise details & Status </center></h4>
                  <span>
                                Select ProjectName:<asp:DropDownList ID="ddlProject" runat="server" AutoPostBack="True" Width="183px" OnSelectedIndexChanged="ddlProject_SelectedIndexChanged"></asp:DropDownList>
                          </span>
                                (OR)<span>
                                  Status:<asp:DropDownList ID="ddlStatus" runat="server" Visible="true" AutoPostBack="True" OnSelectedIndexChanged="ddlStatus_SelectedIndexChanged" >
                            </asp:DropDownList>
                                </span><span>
                           (OR) Domain:<asp:DropDownList ID="ddlDomain" runat="server" Visible="true" AutoPostBack="True" OnSelectedIndexChanged="ddlDomain_SelectedIndexChanged" ></asp:DropDownList>
                                 </span>
                                <span style="float:right">
                                     <asp:Button ID="Button1" runat="server" Text="Export" Visible="false"></asp:Button>
                                </span>
                         <div style="width:99%; height: 200px; overflow: auto">
                        <asp:GridView ID="grdPdetails" runat="server" EmptyDataText="No Records Available">
                        </asp:GridView>
                    </div>
                   </asp:Panel>
                      </ContentTemplate>
                 </ajax:TabPanel>
          <ajax:TabPanel ID="tbpnlusrdetails" runat="server">
               <HeaderTemplate>Team Activities</HeaderTemplate>
               <ContentTemplate>
                    <asp:Panel ID="pnlAW" runat="server">
                        <h4><center> Team Activities </center></h4>
                <div style="padding-left:100px">
                                            <span>
                                            ProjectName:<asp:DropDownList ID="ddlProjectNameTA" runat="server" AutoPostBack="True" OnSelectedIndexChanged="ddlProjectNameTA_SelectedIndexChanged"></asp:DropDownList> <%----%>
                                           </span>  
                                             <span>
                                                 (OR) UserName:<asp:DropDownList ID="ddlUsers" runat="server"  AutoPostBack="true" OnSelectedIndexChanged="ddlUsers_SelectedIndexChanged"></asp:DropDownList>
                                          </span>  
                                          </div>
                                            <br />
                                            <div style="padding-left:100px">
                                             <span>
                                                   (OR) From Date<asp:TextBox ID="txtTAFromDate" Width="113px" runat="server" ReadOnly="true" ></asp:TextBox> <img src="calendar.png" />
                                          </span>  
                                              <span> 
                                                   To Date<asp:TextBox ID="txtTAToDate" Width="113px" runat="server" ReadOnly="true" ></asp:TextBox> <img src="calendar.png" />
                                                  <asp:Button ID="btnGet" runat="server" Text="GET" OnClick="btnGet_Click"/>

                                              </span>
                                                </div>
                                            <asp:Label ID="lblErrmsgTA" runat="server" ForeColor="Red" Font-Bold="true"></asp:Label>
      <div style="width:99%; height: 200px; overflow: auto">
                       <asp:GridView ID="gvTeamActiv" runat="server" EmptyDataText="No Records Available" >
                        </asp:GridView>
                    </div>
                         <asp:Button ID="Button3" runat="server" Text="Export" Visible="false"></asp:Button>
             </asp:Panel>
           </ContentTemplate>
          </ajax:TabPanel>
		  </ajax:TabContainer>
 </div>
    
</asp:Content>


Что я уже пробовал:

<asp:Button ID="btnGet" runat="server" OnClientClick="return compareDate()"  Text="GET" OnClick="btnGet_Click" />


function compareDate() {
            var from = document.getElementById('<%= txtTAFromDate.ClientID %>').value;
            var to = document.getElementById('<%= txtTAFromDate.ClientID %>').value;
            // assuming the date is in dd/mm/yyyy format
            from = toDateObject(from);
            to = toDateObject(to);
            if (from > to)
            {
                alert('start date should be lesser than end date');
                return false;
            }
            return true;
 
        }
        function toDateObject(dateStr) {
            var parts = dateStr.split('/');
            var date = new Date(parts[2], (parts[1] - 1), parts[0]);
            return date;
 
        }


я попробовал эту кнопку кода javascript она не работает поэтому я опубликовал весь код может ли кто нибудь помочь мне так как я новичок в этом

1 Ответов

Рейтинг:
1

Bhola Ram Sahu

Вы должны использовать compareValidator для сравнения от даты и до даты

<asp:CompareValidator ID="Comparevalidator1" runat="server" ErrorMessage="To date must be greater than From date"
   Operator="GreaterThan" ControlToValidate="txtToDate" ControlToCompare="txtFromDate" Type="date" />



Для сравнения с сегодняшним днем вы можете использовать другой compareValidor как

<asp:comparevalidator runat="server" Id="Comparevalidator2"
  errormessage="To date must be less than today"
  controltovalidate="txtToDate" type="Date" Operator="LessThan"
  ValueToCompare="<%= DateTime.Today.ToShortDateString() %>" />



Таким же образом, за период с дата

<asp:comparevalidator runat="server" Id="Comparevalidator3"
  errormessage="From Date must be greater than today"
  controltovalidate="txtFromDate" type="Date" Operator="GreaterThan"
  ValueToCompare="<%= DateTime.Today.ToShortDateString() %>" />