2

単純な html テキストボックスのテキストを削除する方法は知っていますが、html テキストエリアはもっと複雑に見えます。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は、value属性を持つ代わりに、他の<input>要素(withtype textまたは)のように動作し、値はとタグの間にあります。password<textarea></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 に答える