页面上的我的文本框预先填充了必需的文本或“输入文字”。
如果这些方框有“输入文字”,我希望这些文字在包装盒上点击消失。但是如果没有输入任何内容,那么文本框将返回预先填充的“输入文本”。
如果这些方框填充了其他文本(“输入文字”除外,那么我希望它保持不变。
这就是我到目前为止在代码隐藏方面所做的事情:
txtBox.Attributes.Add("onblur", "if(this.value='Enter Text') {this.value=''} else if(this.value.length<=0) {this.value='" + prepopulatedText.ToString() + "'} ");
但它不起作用。
有什么想法吗?
我是否也应该使用“onClick”?
答案 0 :(得分:1)
如果您不担心旧浏览器,那么您可以使用HTML5输入属性即。 placeholder
<input type="text" name="fisrtName" placeholder="Enter your name">
否则你可以这样做
<input name="q" onfocus="if (this.value=='search') this.value = ''" type="text" onblur="if (this.value=='') this.value = 'search'" value="search">
答案 1 :(得分:0)
如果您使用的是Winforms,则可以使用Enter event删除文本。您可以直接在编辑器中注册,也可以通过
注册txtBox.Enter += new System.EventHandler(Enter);
txtBox.Leave+= new System.EventHandler(Leave);
private void Enter(object sender, EventArgs e)
{
if (txtBox.Text == "Enter Text")
{
txtBox.Text = string.Empty;
}
}
Leave event将它放回去。
private void Leave(object sender, EventArgs e)
{
if (txtBox.Text == string.Empty)
{
txtBox.Text = "Enter Text";
}
}