In asp.net, se si utilizza un attributo personalizzato, di solito viene visualizzato così com'è.Attributo di casella di controllo Asp.net e dati HTML
Considerando questo markup (nota: attributi quali id
, name
e for
state rimosse in tutti gli esempi come ID generata/nomi sono dettagliato):
<asp:TextBox runat="server" data-foo="bar" />
è reso in asp.net come:
<input type="text" data-foo="bar" />
Cioè, asp.net mantiene data-foo
intatta.
Casella di solito sono resi in questo modo:
<asp:CheckBox runat="server" Text="Normal" />
rende come:
<input type="checkbox" />
<label>Normal</label>
Ma se si aggiunge un attributo personalizzato su una casella di controllo:
<asp:CheckBox runat="server" Text="Custom attribute" data-foo="bar" />
rende come :
<span data-foo="bar">
<input type="checkbox" />
<label>Custom attribute</label>
</span>
Come si può vedere, una span in rendering per contenere l'attributo. Questo succede anche se si aggiunge l'attributo nel codice. Questo non succede con nessun altro HtmlControl, AFAIK.
Qualcuno sa perché questa estensione è visualizzata per contenere l'attributo?
Esiste comunque il rendering dell'attributo nel tag di input?
interessante .. Solo per curiosità, che cosa stai usando l'attributo extra per \ –