一旦选中,如何使下拉列表项无法选择

时间:2013-02-06 05:01:24

标签: c# asp.net


                    <asp:ListItem>1</asp:ListItem>

                    <asp:ListItem>2</asp:ListItem>

                    <asp:ListItem>3</asp:ListItem>

我在.aspx文件中的表单中有一个下拉列表。

一旦我选择“1”,那么下次如果我重定向到同一页面,那么“1”应该是

无法选择或隐藏,因为我之前选择了“1”,因为我的例子中有大件物品。

4 个答案:

答案 0 :(得分:1)

无法在下拉列表中禁用任何特定项目。

替代:

您可以使用 BulletedList Server Control并使用其Enable = False属性禁用任何特定项目,并且所有用户都可以将该项目视为已停用..此处是一个设计时间的例子。

<asp:BulletedList ID="BulletedList1" runat="server">
            <asp:ListItem>1</asp:ListItem>
            <asp:ListItem>2</asp:ListItem>
            <asp:ListItem Enabled="False">3</asp:ListItem>
            <asp:ListItem>4</asp:ListItem>
</asp:BulletedList>

here

开始

答案 1 :(得分:0)

您可以使用隐藏字段存储代码中选择的项目,并使用以下代码禁用该项目。

//Code Starts
$(document).ready(function() {   
   $('#ddlList option:contains("HTML")').attr("disabled","disabled");
});​
//Code Ends

答案 2 :(得分:0)

您可以使用Cookie跟踪您的选择, 在下拉列表的"onChange"事件中,创建一个包含所选值的cookie, 然后在正文"onLoad"上,您可以检查并禁用Cookie中的项目。

或者您可以将所选值保存在隐藏字段中

答案 3 :(得分:0)

要在下拉列表(DDL)中删除最后选择的项目,请考虑DDL表单的以下代码,您可以使用DDL的 onselectedindexchanged 事件(当你点击一个DDL项目时引发:)

<asp:DropDownList ID="_DDL" runat="server" 
        onselectedindexchanged="_DDL_SelectedIndexChanged" AutoPostBack="true">
        <asp:ListItem>1</asp:ListItem>
        <asp:ListItem>2</asp:ListItem>
        <asp:ListItem>3</asp:ListItem>
</asp:DropDownList>

并使用 RemoveAt()方法后面的代码从DDL中删除所选项目:

        protected void _DDL_SelectedIndexChanged(object sender, EventArgs e)
    {
        int ItemToRemove = _DDL.SelectedIndex;
        _DDL.Items.RemoveAt(ItemToRemove);
    }

希望这会有所帮助:)