2013-04-05 19 views
69

Come inserisco un suggerimento/segnaposto in un asp: TextBox? Quando dico un suggerimento intendo un testo che scompare quando l'utente fa clic su di esso. C'è un modo per ottenere lo stesso usando html/css?Come inserire un suggerimento in un asp: casella di testo

+2

Quali browser stai supportando? I browser HTML5 supportano l'attributo 'placeholder' per le caselle di testo. – rikitikitik

+0

http://stackoverflow.com/questions/35501114/in-asp-net-unable-to-save-textboxes-if-the-text-is-given-in-between-and – Sachin

risposta

135

Il placeholder attributo

Siete alla ricerca per l'attributo placeholder. Usalo come qualsiasi altro attributo all'interno del vostro controllo ASP.net:

<asp:textbox id="txtWithHint" placeholder="hint" runat="server"/> 

non si preoccupano vostro IDE (cioè Visual Studio) forse non sapendo l'attributo. Gli attributi che non sono registrati con ASP.net sono passati e resi come sono. Quindi il codice di cui sopra (in pratica) rende a:

<input type="text" placeholder="hint"/> 

Utilizzando placeholder di risorse

un bel modo di applicare il suggerimento per il controllo utilizza resources. In questo modo potresti avere suggerimenti localizzati. Diciamo che dispone di un file index.aspx, il tuo/ file di App_LocalResources index.aspx.resx contiene

<data name="WithHint.placeholder"> 
    <value>hint</value> 
</data> 

e il vostro controllo si presenta come

<asp:textbox id="txtWithHint" meta:resourcekey="WithHint" runat="server"/> 

il risultato reso avrà lo stesso aspetto come quello nel capitolo sopra.

Add attributo nel codice dietro

Come qualsiasi altro attributo è possibile aggiungere il placeholder al AttributeCollection:

txtWithHint.Attributes.Add("placeholder", "hint"); 
58

Proprio scrivere in questo modo:

<asp:TextBox ID="TextBox1" runat="server" placeholder="hi test"></asp:TextBox> 
14
<asp:TextBox runat="server" ID="txtPassword" placeholder="Password"> 

Questa volontà lavorerai per un po 'di tempo in quanto non funziona a causa di Intellisence not show ing segnaposto

+5

La nota sull'intelligenza è molto utile! –

0
asp:TextBox ID="txtName" placeholder="any text here" 
4

Aggiunta di segnaposto attributi da code-behind:

txtFilterTerm.Attributes.Add("placeholder", "Filter" + Filter.Name); 

O

txtFilterTerm.Attributes["placeholder"] = "Filter" + Filter.Name; 

Aggiunta di segnaposto attributi da aspx pagina

<asp:TextBox type="text" runat="server" id="txtFilterTerm" placeholder="Filter" /> 

oppure

<input type="text" id="txtFilterTerm" placeholder="Filter"/> 
Problemi correlati