【发布时间】:2011-07-13 15:15:26
【问题描述】:
我的 aspx 页面上有一个月份列表,如下所示:
<ul>
<li><a id="Month1" runat="server" class="Month1" href="#">Jan</a></li>
<li><a id="Month2" runat="server" class="Month2" href="#">Feb</a></li>
<li><a id="Month3" runat="server" class="Month3" href="#">Mar</a></li>
<li><a id="Month4" runat="server" class="Month4" href="#">Apr</a></li>
<li><a id="Month5" runat="server" class="Month5" href="#">May</a></li>
<li><a id="Month6" runat="server" class="Month6" href="#">Jun</a></li>
<li><a id="Month7" runat="server" class="Month7" href="#">Jul</a></li>
<li><a id="Month8" runat="server" class="Month8" href="#">Aug</a></li>
<li><a id="Month9" runat="server" class="Month9" href="#">Sep</a></li>
<li><a id="Month10" runat="server" class="Month10" href="#">Oct</a></li>
<li><a id="Month11" runat="server" class="Month11" href="#">Nov</a></li>
<li><a id="Month12" runat="server" class="Month12" href="#">Dec</a></li>
</ul>
在我后面的代码中,如果列表项代表当前月份,我会尝试在 <a> 标记上设置“已选择”类。
我尝试执行以下操作来连接两个字符串以获得对页面上控件的引用:
CType(Page.FindControl("Month" & Now.Month), HtmlControl).Attributes("class") += " selected"
这似乎不起作用,所以我想知道是不是因为该页面位于母版页中,所以我将代码更改为以下内容:
CType(Page.Master.FindControl("Content").FindControl("Month" & Now.Month), HtmlControl).Attributes("class") += " selected"
“Content”是母版页中 ContentPlaceHolder 的 ID。
这仍然不起作用,所以有人可以告诉我我做错了什么吗?谢谢。
编辑: 我刚刚意识到代码实际上是在 ascx 文件中,而不是我上面提到的 aspx 文件。
【问题讨论】:
标签: asp.net master-pages findcontrol