如何在ASP.Net Web窗体中使用的标签?

如何在ASP.Net Web窗体中使用的标签?,asp.net,webforms,label,Asp.net,Webforms,Label,我得到的是纯HTML: <label for="txtPais">Pais:</label> <input name="ctl00$ContentPlaceHolder1$txtPais" type="text" id="ctl00_ContentPlaceHolder1_txtPais" class="textInput" /> Pais: 在Visual Studio中的实际代码中,我有以下内容: <label for="txtPais"

我得到的是纯HTML:

<label for="txtPais">Pais:</label>    
<input name="ctl00$ContentPlaceHolder1$txtPais" type="text" id="ctl00_ContentPlaceHolder1_txtPais" class="textInput" />
Pais:
在Visual Studio中的实际代码中,我有以下内容:

<label for="txtPais">Pais:</label>    
<asp:TextBox ID="txtPais" runat="server" CssClass="textInput"></asp:TextBox>
Pais:
如何为该文本框应用标签?

您应该在Haacked上使用

<asp:Label id="label" AssociatedControlId="txtPais" Text="Pais:" runat="server" />
<asp:TextBox id="txtPais" runat="server" CssClass="textInput" />


这应该在转换ID时正确转换。

建议在标签内包装一些输入,以便于访问(参见此)


在原始问题的评论中提到了这一点

对于其他和我一样用谷歌搜索登陆这里的人。。。标签标签中的“for”属性有助于使用辅助功能工具(如屏幕阅读器)的用户了解标签用于哪个文本框

可能的重复也集中在点击标签时的输入上。因为对于微软团队来说,使用“for”和“class”代替“AssociatedControlId”和“CssClass”似乎太奇怪了。。。未来的设计师们,请保持标准!
<asp:Label ID="UsernameLabel"
           Text="Username:"
           AssociatedControlID="UsernameTextBox"
           runat="server">
    <asp:TextBox ID="UsernameTextBox" runat="server" />
</asp:Label>