这里我试图为我的两个文本框获取水印,据说它们是用户名和密码文本框。我已经掌握了它,使用这段代码:
<asp:TextBox ID="TbUsername" runat="server" CssClass="tb" Width="170px" onfocus="if(this.value=='Enter username'){this.value=''}"
onblur="if(this.value==''){this.value='Enter username'}"></asp:TextBox>
和
<asp:TextBox ID="TbPassword" runat="server" CssClass="tb" TextMode="Password" Width="170px"
onfocus="if(this.value=='Enter password'){this.value=''}" onblur="if(this.value==''){this.value='Enter password'}"></asp:TextBox>
问题是,我只能通过先点击文本框来弹出水印,而我希望它们在页面首次启动时显示。反正有吗?提前感谢您的帮助。
答案 0 :(得分:3)
为Whatemark使用Html5的属性占位符
如下所示
<asp:TextBox ID="TbPassword" runat="server" CssClass="tb" TextMode="Password" Width="170px"
placeholder="Your Password"></asp:TextBox>
要使用此属性,您不需要使用任何外部脚本或进行任何编码,您所做的就是在文本框中放置占位符属性
答案 1 :(得分:1)
您必须在加载页面时设置一个值。
试试这个
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
TbUsername.Text = "Enter username";
TbPassword.Attributes.Add("value", "Enter Password");
}
}
/更新
这是VB.NET的代码
Protected Sub Page_Load(sender As Object, e As EventArgs)
If Not IsPostBack Then
TbUsername.Text = "Enter username"
TbPassword.Attributes.Add("value", "Enter Password")
End If
End Sub
答案 2 :(得分:0)
在.vb
文件的页面加载功能:
If Not IsPostBack Then
Me.TbUsername.Text = "Enter username"
Me.TbPassword.Attributes.Add("value", "Enter Password")
End If
这将首次加载页面watermark
。
另一种方法是使用jquery
和$(document).ready()
函数。
答案 3 :(得分:0)
或者您可以使用ajax toolkit water mark控件