jQuery:textarea默认值在点击时消失

Kar*_*rem 8 jquery textarea onclick

我想要一个带有一些默认文本的textarea.当用户单击textarea时,应删除默认文本.如何让textarea的价值在点击时消失?

我希望它完全像这样,http://www.webune.com/forums/20101025cgtc.html

但我希望它在jQuery中完成.

<textarea id="textarea">This should be removed..</textarea>
Run Code Online (Sandbox Code Playgroud)

Sco*_*ttE 31

我使用它作为它更通用 - 它将清除焦点上的元素值,但如果为空则返回元素的值为默认值.

$("#textarea")
  .focus(function() {
        if (this.value === this.defaultValue) {
            this.value = '';
        }
  })
  .blur(function() {
        if (this.value === '') {
            this.value = this.defaultValue;
        }
});
Run Code Online (Sandbox Code Playgroud)

  • html5现在有占位符属性.https://developer.mozilla.org/en/HTML/Element/textarea (9认同)

Igo*_*lek 6

即使没有JavaScript,您也可以使用placeholder属性来完成此操作.

但是你应该知道并非每个浏览器都支持它.在这种情况下,您可以使用例如此插件:http://plugins.jquery.com/project/input-placeholder


Jak*_*son 5

非常简单的不依赖 jQuery 的解决方案:

<textarea onfocus="if(this.value==this.defaultValue)this.value=''" onblur="if(this.value=='')this.value=this.defaultValue">Hello World</textarea>
Run Code Online (Sandbox Code Playgroud)