Как мне поместить подсказку / заполнитель в asp: TextBox? Когда я говорю подсказку, я имею в виду текст, который исчезает, когда пользователь нажимает на него. Есть ли способ добиться того же с помощью html / css?
Как мне поместить подсказку / заполнитель в asp: TextBox? Когда я говорю подсказку, я имею в виду текст, который исчезает, когда пользователь нажимает на него. Есть ли способ добиться того же с помощью html / css?
Ответы:
placeholder
атрибутВы ищете placeholder
атрибут. Используйте его как любой другой атрибут внутри элемента управления ASP.net:
<asp:textbox id="txtWithHint" placeholder="hint" runat="server"/>
Не беспокойтесь о своей IDE (т.е. Visual Studio), возможно, не зная об атрибуте. Атрибуты, которые не зарегистрированы в ASP.net, передаются и отображаются как есть. Таким образом, приведенный выше код (в основном) отображает:
<input type="text" placeholder="hint"/>
placeholder
в ресурсахПрекрасный способ применения подсказки к элементу управления - использование ресурсов . Таким образом, у вас могут быть локализованные подсказки. Допустим, у вас есть файл index.aspx , ваш файл App_LocalResources / index.aspx.resx содержит
<data name="WithHint.placeholder">
<value>hint</value>
</data>
и ваш контроль выглядит как
<asp:textbox id="txtWithHint" meta:resourcekey="WithHint" runat="server"/>
полученный результат будет выглядеть так же, как и в главе выше.
Как и любой другой атрибут можно добавить placeholder
к AttributeCollection
:
txtWithHint.Attributes.Add("placeholder", "hint");
"WithHint.placeholder"
у меня не сработала.
<asp:TextBox ID="txtWithHint" runat="server" placeholder="<%$ Resources: 52 %>" />
или для глобальных ресурсов:<asp:TextBox ID="txtWithHint" runat="server" placeholder="<%$ Resources: ResourceFile, ResourceValue %>" />
Просто напишите так:
<asp:TextBox ID="TextBox1" runat="server" placeholder="hi test"></asp:TextBox>
<asp:TextBox runat="server" ID="txtPassword" placeholder="Password">
Это сработает, и вы когда-нибудь почувствуете, что это не работает из-за того, что Intellisence не показывает заполнитель
Добавление атрибутов заполнителя из кода программной части:
txtFilterTerm.Attributes.Add("placeholder", "Filter" + Filter.Name);
Или
txtFilterTerm.Attributes["placeholder"] = "Filter" + Filter.Name;
Добавление атрибутов заполнителя со страницы aspx
<asp:TextBox type="text" runat="server" id="txtFilterTerm" placeholder="Filter" />
Или
<input type="text" id="txtFilterTerm" placeholder="Filter"/>
asp:TextBox ID="txtName" placeholder="any text here"
placeholder
атрибут для текстовых полей.