2010-09-03 41 views
0

使这些字段的编辑更容易,如果他们的内容被点击时被删除,我会很高兴。此外,默认值(最初呈现)需要提交,如果它没有改变,这意味着我(可能)不会寻找一个(n的HTML 5)占位符自动擦除,但实际文本。如果该字段被取消选择并保留为空白,则默认值将返回将更好。点击时擦除输入/文本区的内容?

有什么建议吗?

P.S:例如:http://www.makeuseof.com/顶部的“您的电子邮件”输入。

回答

2
<input type="text" value="Something" onfocus="if (this.value == this.defaultValue) this.value='';" onblur="if (this.value == '') this.value = this.defaultValue;"> 

如果你想在一个以上的元素来使用它,你应该提取的事件处理外部函数/脚本。

编辑:

当利用外部函数,则需要提供作为参数传递给该函数的输入元素的引用。

<script type="text/javascript"> 
    function focused(element){if (element.value == element.defaultValue) element.value='';} 
    function blurred(element){if (element.value == '') element.value = element.defaultValue;} 
</script> 

<input type="text" value="Default Value" onfocus="focused(this)" onblur="blurred(this)"> 

注意:在JavaScript中,函数以小写字母开头。

+0

非常感谢您的快速响应,您能否更详细地解释“将事件处理程序解压缩到外部函数”,我以前从未使用过JavaScript(试图学习PHP)。我想我需要一个函数而不是脚本,因为我只会在一个页面上使用它。然后我在输入/ textarea被点击时调用函数,对吗?再次感谢。编辑:就像一个魅力的方式! – Chris 2010-09-03 09:01:38

+0

得到它的工作,伟大:-)。 – Chris 2010-09-03 10:07:46

0

onfocus试试:

<input type="text" value="Default text" onfocus="this.value = ''"> 
+0

是的,我已经尝试过,但它没有弹出默认回来,如果它留空:-)。不管怎么说,还是要谢谢你! – Chris 2010-09-03 08:57:50

相关问题