如何在asp:TextBox中放置提示/占位符?当我说一个提示时,我的意思是一些文字在用户点击它时会消失。有没有办法用html / css实现相同的目标?
答案 0 :(得分:170)
placeholder
属性您正在寻找placeholder
属性。像使用ASP.net控件中的任何其他属性一样使用它:
<asp:textbox id="txtWithHint" placeholder="hint" runat="server"/>
不要担心您的IDE(即Visual Studio)可能不知道该属性。未在ASP.net中注册的属性将按原样传递和呈现。所以上面的代码(基本上)呈现为:
<input type="text" placeholder="hint"/>
placeholder
将提示应用于控件的一种好方法是使用resources。这样您就可以拥有本地化提示。假设您有一个 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");
答案 1 :(得分:60)
就这样写:
<asp:TextBox ID="TextBox1" runat="server" placeholder="hi test"></asp:TextBox>
答案 2 :(得分:17)
<asp:TextBox runat="server" ID="txtPassword" placeholder="Password">
由于Intellisence未显示占位符
,您可能会觉得它无法正常工作答案 3 :(得分:5)
从代码隐藏中添加占位符属性:
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"/>
答案 4 :(得分:0)
asp:TextBox ID="txtName" placeholder="any text here"