我正在尝试以编程方式禁用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属性但是我认为错了。
我做错了什么,或者这对我想要实现的目标不是一个好方法?
答案 0 :(得分:0)
HTML中的disabled
属性对所有元素无效。如果我没有弄错的话,只有button, input, select, textarea, optgroup, option
和fieldset
元素才能实际拥有已禁用的属性。
所以,不,这不是一个有效的方法。如果等级是9,我猜你要禁用链接吗?您应该定位a
标记并将其添加到它们:
onclick="return false;"
在C#代码中:
aElement.attributes.add("onclick", "return false");
其中aElement是包含runat="server"
和ID="aElement"