根据asp.net中下拉框中的选择显示文本框

show textbox based on selection from a drop-down box in asp.net

本文关键字:选择 显示 文本 asp net 根据      更新时间:2023-09-26

我只想在用户从下拉列表中选择"是"时显示文本框。默认情况下,我想保持文本框隐藏或不可见,但仅在下拉列表中选择"是"时显示。谢谢

<asp:DropDownList ID="ddl1" AutoPostBack="false" CssClass="form-control" runat="server" AppendDataBoundItems="true">
                            <asp:ListItem Text="!!! Please make selection !!!" Value="0"></asp:ListItem>
                            <asp:ListItem Text="Yes" Value="Yes"></asp:ListItem>
                            <asp:ListItem Text="No" Value="No"></asp:ListItem>
                        </asp:DropDownList>

这是的文本框

 <asp:TextBox ID="txt1" runat="server"  CssClass="form-control"></asp:TextBox>

如果你愿意使用jQuery,你会这样做。

$(function () {
    $('[id*="ddl1"]').on('change', function () {
        var val = this.value,
            $txtbox = $('[id*="txt1"]');
        if (val === "Yes") {
            // Show text box
            $txtbox.show();
        } else {
            // Hide text box
            $txtbox.hide();
        }
    });
});

还要确保文本框在加载时隐藏。

<asp:TextBox ID="txt1" runat="server" style="display:none;"  CssClass="form-control"></asp:TextBox>

如果不使用jquery,则使AutoPostBack="true"和textbox可见false。然后双击ddl1并写入所选的dexchange方法c#

if(ddl1.selecteditem==true) 
      txt1.visible=true;
else
      txt1.visible=false;