创建文本框时,默认显示灰色文本 (#888)。当它获得焦点时,该值应该消失并开始显示键入的值。我已经为这个问题编写了代码,如下所示:
<html>
<script type="text/javascript">
function Focus(i) {
if (i.value == i.defaultValue) {
i.value = "";
i.style.color = "#000";
}
}
function Blur(i) {
if (i.value == "") {
i.value = i.defaultValue;
i.style.color = "#888";
}
}
</script>
<body>
<input type="text" name="enter firstname" title="First Name" style="color:#888;"
value="First Name" onfocus="Focus(this)" onblur="Blur(this)" />
<input type="text" name="enterlastname" title="Last Name" style="color:#888;"
value="lastname" onfocus="Focus(this)" onblur="Blur(this)" />
</body>
</html>
但是,这里只要文本框获得焦点,值就会消失。我应该怎么做才能纠正这个问题?即使文本框处于焦点之下,该值也不应该消失,并且只有在我开始输入时该值才会消失。我是新用户,所以我无法发布屏幕截图。
最佳答案
你想要的是placeholder
。
像这样使用它:
<input type="text" name="enterfirstname" placeholder="First Name" />
<input type="text" name="enterlastname" placeholder="Last Name" />
关于Javascript 在输入文本中复制占位符功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13030109/