2012-02-14 3 views
0

Я пытался очистить ввод текста, используя onfocus и onblur внутри тега ввода, но я буду использовать его во многих полях, поэтому я нашел эту функцию JQuery, но я не могу заставить ее работать.Как использовать эту функцию JQuery для очистки входного текста?

$('.default-value').each(function() { 

    var default_value = this.value; 

    $(this).focus(function(){ 
      if(this.value == default_value) { 
        this.value = ''; 
      } 
    }); 

    $(this).blur(function(){ 
      if(this.value == '') { 
        this.value = default_value; 
      } 
    }); 
}); 

Я пытался ставить этот тег внутри сценария внутри головки тега, и я добавил класс по умолчанию стоимости для входов, которые я хочу, чтобы очистить, но он не работает.

так что я делаю неправильно? Я не знаю javascript, и я связываюсь с последним JQuery.

и благодаря

+0

Если вы только поддерживать «хорошие» браузеры вы можете просто сделать '<входной тип =«текст»заполнитель =«мой значение по умолчанию»/>' – karim79

+1

нужно включать HTML код в ваш вопрос. Также нужно описать, что вы хотите сделать и что он делает вместо – Alfabravo

+0

Я знаю, что я использую placeholder, но я намерен использовать его вместо этого для старых браузеров. – Pierre

ответ

3

Похоже, вы заново изобретать @placeholder здесь.

Просто используйте HTML, как это:

<input type="text" placeholder="foo bar"> 

Это поддерживается в большинстве современных браузеров.

Затем используйте полиполк, чтобы убедиться, что более старые браузеры получают аналогичное поведение. Я написал один в формате плагина Jquery, если вы заинтересованы: http://mths.be/placeholder

Используйте его следующим образом:

$('input, textarea').placeholder(); 

Вот демо: http://mathiasbynens.be/demo/placeholder

+0

Обратите внимание, что атрибут 'placeholder' является функцией HTML5. –

2

Я не думаю, что это будет работать из-за закрытия. Необходимо помнить значение по умолчанию для каждого поля. , например.

$('.default-value').each(function() { 

    $(this).attr('default_value',$(this).val()); 

    $(this).focus(function(){ 
     if($(this).val() == $(this).attr('default_value')) { 
       $(this).val(''); 
     } 
    }); 

    $(this).blur(function(){ 
     if($(this).val() == '') { 
       $(this).val($(this).attr('default_value')); 
     } 
    }); 
}); 
Смежные вопросы