2

我知道如何在一个简单的 html 文本框中删除文本,但 html textareas 似乎要复杂得多。而不是 value 属性,您将文本放在以下之间:

 <html>
<textarea> </textarea>.  
</html>

这就是为什么我无法制作 onFocus 和 onBlur 事件。

4

4 回答 4

14
<textarea name="message" onfocus="if(this.value==this.defaultValue)this.value='';" onblur="if(this.value=='')this.value=this.defaultValue;">
Put anything for default value here
</textarea>

现场示例:http: //jsfiddle.net/SRYLg/

于 2011-07-14T16:05:36.010 回答
1

textarea 的行为类似于其他<input>元素(带有type textpassword),而不是具有 value 属性,值位于<textarea>and</textarea>标记之间。

访问和修改文本字段的内容没有区别。下面的代码显示一个文本区域和一个输入框。相同的函数用于访问值和修改它。如果输入时该值等于“示例文本”,则该文本被清除。如果离开时textarea/输入框为空,“示例文本”将被放入其中。

<textarea id="field1">example text</textarea>
<input id="field2" value="example text">
<script>
function addEvents(id) {
    var field = document.getElementById(id);
    field.onfocus = function () {
        if (this.value == "example text") {
            this.value = "";
        } 
    };
    field.onblur = function () {
        if (this.value == "") {
            this.value = "example text";
        } 
    };
}
addEvents("field1");
addEvents("field2");
</script>
于 2011-06-15T20:42:32.287 回答
0

你的 Javascript 应该有:

function RemoveText(obj) 
{   obj.value = ''; } 

你的 HTML 元素应该有:

onfocus="RemoveText(this);"
于 2011-06-15T20:37:54.470 回答
0

在 onFocus 事件期间调用 javascript 函数怎么样?

function emptyText(){    
    document.getElementById(textarea).innerHTML = "";
}
于 2011-06-15T20:38:31.733 回答