2

私は2つの入力を持っています:

<input type="text" value="username">
<input type="password" value="password">

特定の入力にいる場合、デフォルト値を(初めて)削除したい。次のように JavaScript で属性を追加しました。

onfocus="this.value='';"

しかし、これはそれに焦点を合わせるたびに入力をクリアします。最初に入力をクリアする方法は?

4

7 に答える 7

8

必要なものはプレースホルダーと呼ばれます:自動的に削除されるデフォルト値です。

プレースホルダーがIE9 ユーザーに表示されないことを受け入れることができる場合は、次のようにします。

<input type="text" placeholder="username">

IE9 との互換性が必要な場合は、多くのポリフィルの 1 つを使用してください。

于 2013-08-29T16:04:29.640 に答える
6

たとえば、入力でプレースホルダーを使用するだけです

<input type="text" placeholder="username">

すべての入力に名前を付けるとよいので、次のようにします。

<input type="text" name="username" placeholder="username">
于 2013-08-29T16:04:43.770 に答える
3

試す

onfocus="if(this.flag == undefined){ this.flag = true; this.value=''; }"
于 2013-08-29T16:04:22.300 に答える
1

jQuery を使用している場合は、これを使用できます。

<input type="text" name="username" value="username" />

Javascript:

$('input[name=username]').one('focus', function() {
    $(this).val('');
});

.one()バインドされたイベントを 1 回だけ発生させます

于 2013-08-29T16:09:40.707 に答える
0
<input type="text" value="username" id="username" title="username" />

$( '#username' ).bind({
    'focus': function( event ) {
       $( this ).val( '' );
    },
    'blur': function( event ) {
       var obj = $( this ),
           title = obj.attr( 'title' );
       obj.val( title );
    }
})
于 2013-08-29T16:09:24.003 に答える