0

開始月、開始年、終了月、終了年の 4 つのドロップダウンがあります。私の JavaScript では、次の検証を処理する必要があります。

 Start Month should not be greater than End Month
 Start Year should not be greater than End Year
 Month and Year cannot be same (i.e., Oct 2013 - Oct 2013)

私の検証機能は次のとおりです。

var pStartMonth, pStartYear, pEndMonth, pEndYear;

    pStartMonth = $('#<%= cboMonth1.ClientID %>').val();
    pStartYear = $('#<%= cboYear1.ClientID%>').val();

    pEndMonth = $('#<%= cboMonth2.ClientID%>').val();
    pEndYear = $('#<%= cboYear2.ClientID%>').val();

    function ValidateMonth() {
        if ((pStartMonth > pEndMonth) && (pStartYear = pEndYear)) {
        }
        }

        function ValidateMonthAndYear() {
            if ((pStartMonth = pEndMonth) && (pStartYear = pEndYear)) {

            }
        }

        function ValidateYear(){
            if((pStartMonth = pEndMonth) && (pStartYear > pEndYear))
            {

            }
        }

End Year ドロップダウン リストで次の 3 つの関数を使用しました。

<asp:DropDownList ID="cboYear2" runat="server" AutoPostBack="true" onclick="javascript:shouldsubmit=false;" >
                                <asp:ListItem Value="0">-Select-</asp:ListItem>
                                <asp:ListItem Value="2013">2013</asp:ListItem>
                                <asp:ListItem Value="2014">2014</asp:ListItem>
                                <asp:ListItem Value="2015">2015</asp:ListItem>
                                <asp:ListItem Value="2016">2016</asp:ListItem>
                                <asp:ListItem Value="2017">2017</asp:ListItem>
                                <asp:ListItem Value="2018">2018</asp:ListItem>
                                <asp:ListItem Value="2019">2019</asp:ListItem>
                                <asp:ListItem Value="2020">2020</asp:ListItem>
                                <asp:ListItem Value="2021">2021</asp:ListItem>
                                <asp:ListItem Value="2022">2022</asp:ListItem>
                                <asp:ListItem Value="2023">2023</asp:ListItem>
                                <asp:ListItem Value="2024">2024</asp:ListItem>
                            </asp:DropDownList>
                            <font color="red">*</font>

                            <asp:RequiredFieldValidator ID="cboYear2_RequiredFieldValidator" runat="server"
                                ErrorMessage="End Year Required" ForeColor="Red" Font-Size="0.9em" ControlToValidate="cboYear2" ValidationGroup="vTimeSlot" Display="None"></asp:RequiredFieldValidator>

                            <asp:CustomValidator ID="CustomValidator1" ControlToValidate="cboYear2" ClientValidationFunction="ValidateMonth"
                                Display="None" ErrorMessage="Prefered Start Month should not be ahead of Prefered End Month" runat="server" ValidationGroup="vTimeSlot"/>

                            <asp:CustomValidator ID="CustomValidator2" ControlToValidate="cboYear2" ClientValidationFunction="ValidateMonthYear"
                                Display="None" ErrorMessage="Prefered Start Month and Prefered End Month and Prefered Start Year and Prefered End Year cannot be the same" runat="server" ValidationGroup="vTimeSlot"/>

                            <asp:CustomValidator ID="CustomValidator3" ControlToValidate="cboYear2" ClientValidationFunction="ValidateYear"
                                Display="None" ErrorMessage="Prefered Start Year should not be ahead of Prefered End Year" runat="server" ValidationGroup="vTimeSlot"/>

しかし、私の機能はどれも起動していないようです。私は何が欠けていますか?

4

0 に答える 0