【问题标题】:disable dropdownlist items禁用下拉列表项
【发布时间】:2011-07-14 02:07:54
【问题描述】:

我想禁用下拉列表中的每五个项目。

dropdownlist1.items[i].Attributes.Add("disabled","disabled");

如何编写逻辑来禁用下拉列表中的每五个项目?

我正在使用两个for 循环:一个用于显示项目,一个用于禁用下拉列表中的项目。如何简化我的代码?

【问题讨论】:

  • for(i=0;I

标签: c# asp.net drop-down-menu


【解决方案1】:

也许您应该考虑不显示它们? 如:

if (i % 5 > 0) {
   dropdownlist1.items[i].Attributes.Add("disabled","disabled");
}

【讨论】:

  • 这不会“隐藏”它们,而是将它们变灰并阻止它们被选择——就像 OP 请求的那样。
【解决方案2】:
foreach(Control c in this.Controls)
 {
    if(c is dropdownlist)
    {
        dropdownlist dl = (dropdownlist)c;
        if (i % 5 > 0)
        {
           dl.items[i].Attributes.Add("disabled","disabled");
        }
    }
 }

看看这个!和castirng一样。

找出表格上的所有下拉列表,然后 在每个下拉列表中,它将禁用。

告诉我!!

【讨论】:

    【解决方案3】:

    如果您需要一个 optgroup 功能来对您的选项进行分组。如果您不知道 http://www.w3schools.com/tags/tryit.asp?filename=tryhtml_optgroup,以下是 optgroup 的示例。

    有多种方法可以将optgroup 添加到下拉列表http://weblogs.asp.net/jeff/archive/2006/12/27/dropdownlist-with-optgroup.aspx

    那么你可以这样使用它

    ListItem item = new ListItem("some group name", String.Empty);
    item.Attributes["optgroup"] = "optgroup";
    myDropDown.Items.Add(item);
    

    或者在你的情况下

    dropdownlist1.items[i].Attributes["optgroup"] = "optgroup";
    

    【讨论】:

      【解决方案4】:

      使用 jQuery

      var count = 0;
      $('select option').each(function() {
         count++;
         if(count % 5 == 0)
           $(this).attr('disabled', 'disabled'); 
      }):
      

      【讨论】:

        【解决方案5】:

        我搜索了“禁用下拉列表项”,the first result 提供了您正在寻找的确切答案。

        这是不可能的,但有其他选择。

        【讨论】:

        • 在同一个链接上,用户“Henxon”表明它是可能的,在本页上面的答案中使用相同的items[i].Attributes.Add("disabled")。为了看到选项被禁用,您需要将其放入 Page_Load 或将下拉列表放入 AJAX UpdatePanel 的 ContentTemplate 中(如果您正在动态执行此操作) - 但如果您没有使用 UpdatePanel 并且您尝试即时执行,仅仅因为选项没有禁用,并不意味着它不能完成 - 它只是没有正确设置。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-07-05
        • 2013-12-17
        • 1970-01-01
        • 2014-04-02
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多