web-dev-qa-db-fra.com

Comment mettre un indice dans un asp: textbox

Comment insérer un indice/un espace réservé dans un asp: TextBox? Lorsque je dis un indice, je veux dire un texte qui disparaît lorsque l'utilisateur clique dessus. Existe-t-il un moyen d'obtenir le même résultat en utilisant HTML/CSS?

92
user590849

L'attribut placeholder

Vous recherchez l'attribut placeholder . Utilisez-le comme n'importe quel autre attribut dans votre contrôle ASP.net:

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

Ne vous préoccupez pas de votre IDE (Visual Studio) peut-être ne connaissant pas l'attribut. Les attributs qui ne sont pas enregistrés avec ASP.net sont transmis et restitués tels quels. Donc, le code ci-dessus (en gros) rend:

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

Utilisation de placeholder dans les ressources

Une bonne façon d'appliquer l'indicateur au contrôle est d'utiliser ressources . De cette façon, vous pouvez avoir des indications localisées. Supposons que vous ayez un fichier index.aspx que votre fichier App_LocalResources/index.aspx.resx contient

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

et votre contrôle ressemble à

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

le résultat sera identique à celui du chapitre précédent.

Ajouter un attribut dans le code derrière

Comme tout autre attribut, vous pouvez ajouter le placeholder au AttributeCollection :

txtWithHint.Attributes.Add("placeholder", "hint");
177
Linus Caldwell

Il suffit d'écrire comme ceci:

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

Cela fonctionnera un certain temps, vous aurez peut-être le sentiment que cela ne fonctionne pas car Intellisence ne s'affiche pas placeholder

17
Shrivallabh

Ajout d'attributs d'espace réservé à partir de code-behind:

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

Ou

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

Ajout d'attributs d'espace réservé à partir de la page aspx

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

Ou

<input type="text" id="txtFilterTerm" placeholder="Filter"/>
7
Shibu Thomas
asp:TextBox ID="txtName" placeholder="any text here"
0