2

コードが実行されず、別のコードをクリックしたときに値をクリアしたい

私は何を間違っていますか?

http://jsfiddle.net/AL2vS/

var placeholderText = $('input').val();

$(placeholderText).focus(function() {
    $(this).attr('value', "");
});
$(placeholderText).blur(function() {
    $(this).attr('value', phTextVal);
});​
4

6 に答える 6

4

「placeholderText」をセレクターとして使用していますが、何も選択されません。代わりに$('input').focus(...andを使用してください。$('input').blur(...

アップデート

既存の値を保存してから置き換える場合.data()は、<input>要素自体に保存します。

$('input').focus(function() {
    $this = $(this);
    $this.data('oldval',$this.val());
    $this.val('');
});
$('input').blur(function() {
    $this = $(this);
    $this.val($this.data('oldval'));
});​

http://jsfiddle.net/mblase75/AL2vS/12/

またはおそらく:

$('input').blur(function() {
    $this = $(this);
    if ($this.val().length==0) { // only if the field is blank
        $this.val($this.data('oldval'));
    };
});​
于 2012-04-19T20:36:29.807 に答える
0

object.defaultValueプロパティを使用するのはどうですか?

働き:

$.fn.smartInput=function(){
    return this.each(function(i,o){
     $(o).focus(function(){ if(this.value==this.defaultValue) this.value='';})
         .blur(function(){ this.value=(this.value=='')?this.defaultValue:this.value;});
     });

}

利用方法:

$('input').smartInput();
于 2012-04-19T21:10:01.653 に答える
0

私はより良い方法は次のとおりだと思います:

var placeholderText = $('input');

$(placeholderText).focus(function() {
    phTextVal = $(this).val();
    $(this).val("");
}).blur(function() {
    $(this).val(phTextVal);
});​
于 2012-04-19T20:39:37.213 に答える
0

見てみな、

$('input').focus(function() {
    placeholderText = $('input').val();
    $(this).val("");
});

$('input').blur(function() {
    $(this).val(placeholderText);
});​

http://jsfiddle.net/AL2vS/8/

入力されたデータを使って何かをする必要があります。

于 2012-04-19T20:41:10.850 に答える
0

こんな感じですか?

http://jsfiddle.net/AL2vS/1/

于 2012-04-19T20:37:27.190 に答える
0

これにより、少なくともテキストの削除が機能します。

var placeholderText = $('input');

placeholderText.focus(function() {
    $(this).attr('value', "");
});
placeholderText.blur(function() {
    $(this).attr('value', phTextVal);
});​

HTML5プレースホルダーの paramを確認することもできます。

于 2012-04-19T20:37:58.767 に答える