使用 ASP.net 从 Web 表单的下拉列表中选择值时,应验证文本框以接受特定值

text box should be validated to accept a particular value on selecting value from dropdownlist in web form using ASP.net

我有一个包含 3 个值的下拉列表:早餐、午餐、晚餐。 和两个只接受时间的文本框。

条件一:如果选择的值为早餐,用户只能在文本框中输入早上 7 点到 10 点之间的时间。 条件 2:如果选择的值为午餐,用户只能输入 12:00 pm 到 2:00 pm 之间的时间 条件 3:如果选择的值为晚餐,用户只能输入 8:00pm 到 10:00 pm

之间的时间

由于您没有包含任何现有代码,因此我不会解释我的工作。 :)

.aspx

<form id="form1" runat="server">
    <asp:DropDownList ID="ddlMeal" runat="server" AutoPostBack="true"
        OnSelectedIndexChanged="ddlMeal_SelectedIndexChanged" required>
        <asp:ListItem Value="" Text="Select from the list..." />
        <asp:ListItem Value="1" Text="Breakfast" />
        <asp:ListItem Value="2" Text="Lunch" />
        <asp:ListItem Value="3" Text="Dinner" />
    </asp:DropDownList>
    <br />
    <asp:TextBox ID="txtStart" runat="server" type="time" required />
    <asp:TextBox ID="txtEnd" runat="server" type="time" required /><br />
    <asp:Button ID="btnSubmit" runat="server" Text="Submit" />
</form>

.aspx.cs

protected void ddlMeal_SelectedIndexChanged(object sender, EventArgs e)
{
    if (ddlMeal.SelectedValue != "") // if meal type is selected
    {
        if (ddlMeal.SelectedValue == "1") // Breakfast
        {
            txtStart.Attributes.Add("min", "07:00:00");
            txtStart.Attributes.Add("max", "10:00:00");
            txtEnd.Attributes.Add("min", "7:00:00");
            txtEnd.Attributes.Add("max", "10:00:00");
        }
        else if (ddlMeal.SelectedValue == "2") // Lunch
        {
            txtStart.Attributes.Add("min", "12:00:00");
            txtStart.Attributes.Add("max", "14:00:00");
            txtEnd.Attributes.Add("min", "12:00:00");
            txtEnd.Attributes.Add("max", "14:00:00");
        }
        else // Dinner
        {
            txtStart.Attributes.Add("min", "20:00:00");
            txtStart.Attributes.Add("max", "22:00:00");
            txtEnd.Attributes.Add("min", "20:00:00");
            txtEnd.Attributes.Add("max", "22:00:00");
        }
    }
}

注:我只用GoogleChrome.

测试了属性值'time'

干杯!