1

ページドキュメントのすべてのフォームのすべての入力(テキストとパスワード)フィールドをターゲットにして、この単一のスクリプトでフォーカスされているときにデフォルト値を削除する方法を見つけようとしています:

$(document).ready(function()
{
    Input = $('input');
    default_value = Input.val();

    $('input').focus(function() 
    {
        if($(this).val() == default_value)
        {
            $(this).val("");
        }
    }).blur(function()
    {
        if($(this).val().length == 0)
        {
            $(this).val(default_value);
        }
    });
});

私のページの最初のフォームの最初の入力テキスト要素でのみ機能しますが、残りの部分では機能しません。助けてください!

4

2 に答える 2

1

入力タイプのテキスト値をすべて取得します。

$("input:text").each(function() {
  alert($(this).val());
});

入力タイプのパスワード値をすべて取得します。

$("input:password").each(function() {
  alert($(this).val());
});
于 2013-03-27T23:35:57.820 に答える
0

これvalは、値を格納する代わりに、最初に選択した要素の値のみを返すためです。オブジェクトdefaultValueのプロパティを使用できます。HTMLInputElement

$('input[type=text], input[type=password]').focus(function() {
   if (this.value === this.defaultValue) $(this).val("");
}).blur(function(){
   if (this.value.length === 0) this.value = this.defaultValue;
});

http://jsfiddle.net/MscgZ/

于 2013-03-27T23:34:28.843 に答える