単純な html テキストボックスのテキストを削除する方法は知っていますが、html テキストエリアはもっと複雑に見えます。value 属性の代わりに、テキストを間に入れます。
<html>
<textarea> </textarea>.
</html>
これが、onFocus および onBlur イベントの作成に問題がある理由です。
<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>
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>
Javascript には次のものが必要です。
function RemoveText(obj)
{ obj.value = ''; }
そして、あなたの HTML 要素には以下が必要です:
onfocus="RemoveText(this);"
onFocus イベント中に JavaScript 関数を呼び出すのはどうですか?
function emptyText(){
document.getElementById(textarea).innerHTML = "";
}