HTML-Label-Tag und ASP.NET
Was ist der beste Weg, um die <label>
tag in einer ASP.NET Anwendung? Ich will, dass es XHTML-valid, zugänglich und nutzbar.
Ich verstehen, der optimale Weg ist dieses:
<label for="Username">Username:</label>
<input type="text" id="Username" runat="server" />
Aber wenn der obige code ist in einem ASP.NET Benutzer-Steuerung, die Eingabe-ID zu ändern, was bedeutet die Bezeichnung "for" - Attribut ist nutzlos. Ich könnte das label-tag ein server-Steuerelement, und legen Sie es "für" - Attribut im code (Username.ClientID), aber es scheint wie eine Menge Arbeit für so eine einfache Sache.
Habe ich auch gesehen, das HTML in der Vergangenheit verwendet:
<label>
<span>Username</span>
<input type="text" id="Username" runat="server" />
</label>
Was ist das optimale Vorgehen?
InformationsquelleAutor der Frage Alex York | 2009-01-29
Du musst angemeldet sein, um einen Kommentar abzugeben.
Benutze ich
<asp:Label ... AssociatedControlID="Username" ...>
Steuerung für diese. Bekommen Sie dargestellt, als<label>
tags, und legen Sie diefor
Attribut entsprechend.Beachten Sie, dass Sie können auch verschachtelt werden, anderen tags innerhalb des Label-Steuerelements, wenn Sie möchten:
InformationsquelleAutor der Antwort Sean Bright
Können Sie auch schreiben, wie diese:
Phil Haack hat eine blog-post zu diesem Thema
InformationsquelleAutor der Antwort Christian Hagelid
verwenden Sie die
<asp:Label>
server Steuern. Es hat eine Eigenschaft, die Sie verwenden können, um das zugeordnete Steuerelement-ID.InformationsquelleAutor der Antwort Matt Brunell
Ich denke, der einfachste Weg, es zu tun ist.
EDIT: Wow.. alle gleiche Antworten innerhalb einer minute. =)
InformationsquelleAutor der Antwort Brian Kim
Wenn Sie mit .NET 4 können Sie jetzt mit der ClientIDMode-Eigenschaft konfigurieren Sie ein oder mehrere Steuerelemente verwenden statische oder vorhersehbar-ID. Der ClientIDMode-Eigenschaft kann festgelegt werden, auf das Textfeld direkt oder Sie können es auf jedem übergeordneten Steuerung oder der enthaltenden Seite benutzt werden.
Lesen Sie mehr über die ClientIDMode auf MSDN
InformationsquelleAutor der Antwort Christian Hagelid
Wenn Sie ein label haben wollen, aber nicht über ein anderes Steuerelement zu verwenden, in
AssociatedControlID
man kann das label selbstInformationsquelleAutor der Antwort RMalke
InformationsquelleAutor der Antwort chugh97
Du meine auch probieren und so:
Dies ist, was Visual Studio oder andere software gibt, wenn Sie drag-and-drop ein label.
InformationsquelleAutor der Antwort magn