当使用资源时,asp:label被转换为span元素

时间:2016-01-07 14:46:56

标签: asp.net

我有一个标签元素如下:

<asp:Label ID="date" runat="server" Text="<%$ Resources:Resource, DATE%>" CssClass="col-sm-4 control-label" />

当我在浏览器中以某种方式呈现此内容时,会生成span元素,如下所示:

<span id="ctl00_MainContent_FormDate_Date" class="col-sm-4 control-label">Date</span>

使页面看起来不同。

但是当我使用文本而不是资源时:

<asp:Label ID="date" runat="server" Text="Date" CssClass="col-sm-4 control-label" />

这正确呈现:

<label for="ctl00_MainContent_FormDate_Date" class="col-xs-4 control-label">Date</label>

任何人都可以解决此问题,如何在使用资源时将问题修复为<label>

1 个答案:

答案 0 :(得分:1)

尽管我知道您已经找到了解决方案,但我正在为该帖子的将来读者答复。

如果设置Label.AssociatedControlID值,它将成为label元素。 如果未与控件关联,或者换句话说,它没有用作label元素,则它将成为span元素。

与控件无关的label被认为是错误的标记。因此,如果未将label控件分配给控件,则不是放置label .NET而是将其放置为span元素。