禁用asp.net中的li元素

时间:2015-07-28 21:14:12

标签: html asp.net html-lists

我正在尝试以编程方式禁用ul,具体取决于IF语句的结果,我有这个HTML:

<asp:PlaceHolder ID="tab1_placeholder" runat="server">
    <li class="active" runat="server" id="tab1">
        <a href="#tab_default_1" data-toggle="tab">
        1* </a>
    </li>
</asp:PlaceHolder>

然后在我的代码中:

if (System.Convert.ToInt32(Session["level"]) > 5)
{
   tab1.Disabled = true;
}

然而,这并不起作用,因为它没有在级别为9时禁用它,我还尝试将PlaceHolder包裹在它周围,认为PlaceHolder有一个Disabled属性但是我认为错了。

我做错了什么,或者这对我想要实现的目标不是一个好方法?

1 个答案:

答案 0 :(得分:0)

HTML中的disabled属性对所有元素无效。如果我没有弄错的话,只有button, input, select, textarea, optgroup, optionfieldset元素才能实际拥有已禁用的属性。

所以,不,这不是一个有效的方法。如果等级是9,我猜你要禁用链接吗?您应该定位a标记并将其添加到它们:

onclick="return false;"

在C#代码中:

aElement.attributes.add("onclick", "return false");

其中aElement是包含runat="server"ID="aElement"

的锚元素