如何将提示/占位符放在asp:TextBox中?当我说一个提示时,我指的是一些文本,当用户单击它时,这些文本就会消失。有没有办法使用html / css实现相同的目的?
如何将提示/占位符放在asp:TextBox中?当我说一个提示时,我指的是一些文本,当用户单击它时,这些文本就会消失。有没有办法使用html / css实现相同的目的?
Answers:
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 runat="server" ID="txtPassword" placeholder="Password">
这可能会起作用,您可能会由于智能未显示占位符而感到一段时间不起作用
从代码后面添加占位符属性:
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"/>
placeholder
文本框的属性。