Правильное исправление текста заполнителя для старых браузеров?

Я хотел бы использовать код jQuery для имитации текста-заполнителя для старых браузеров. Я нашел несколько отличных кандидатов, которые хорошо работают. Однако одна проблема заключается в том, что решения обычно вводят текст заполнителя в качестве значения ячейки (до тех пор, пока пользователь не введет его). Это означает, что если html-форма отправляется с любыми неизменными полями, то текст-заполнитель отправляется, как если бы он вводился пользователем.

Существуют ли какие-либо решения-заполнители jQuery, которые решают эту проблему?

Ваше здоровье


person jay    schedule 20.01.2012    source источник


Ответы (3)


Я использую заполнитель jquery. Ты должен попробовать это

https://github.com/prantor19/jquery-placeholder

person Arif    schedule 18.05.2013

Перед отправкой формы проверьте, присутствует ли значение заполнителя, и удалите его:

$('form').submit(function(){
   if($('#someinput').val() == 'placeholder value') {
     $('#someinput').val('');
   }
});
person Konrad Dzwinel    schedule 20.01.2012
comment
Кажется, я не могу запустить содержимое при отправке формы. он отправляется удаленно, это проблема? - person jay; 20.01.2012
comment
Что вы имеете в виду под «отправкой удаленно»? С помощью javascript, а не напрямую пользователем? submit триггер все равно должен сработать. - person Konrad Dzwinel; 20.01.2012
comment
на самом деле, я думаю, что .submit - это метод jquery для отправки формы. Я не думаю, что он реагирует на отправку формы. api.jquery.com/submit Думаю, нужен другой метод - person jay; 20.01.2012
comment
В документах написано: Bind an event handler to the "submit" JavaScript event, OR trigger that event on an element., помните OR :) - person Konrad Dzwinel; 20.01.2012
comment
Проверьте, находится ли ваш код внутри $(document).ready(function(){ -code here- });, об этом часто забывают. - person Konrad Dzwinel; 20.01.2012
comment
да .. я не знаю, делаю ли я что-то не так. Он у меня внутри готового документа. Если я напишу предупреждение (привет), я получу предупреждение, если оно находится за пределами части отправки формы. Но я не могу получить код для выполнения при отправке формы ... - person jay; 20.01.2012
comment
да, моя проблема была связана с загрузкой формы после начальной загрузки страницы, а не с вашим кодом. Спасибо за помощь. - person jay; 20.01.2012

Я просто не понимаю, как насчет чего-то вроде this (jsfiddle).

person magicalex    schedule 20.01.2012
comment
это может сработать ... но потребует, чтобы я изменил все формы - возможно, я попытаюсь написать код jquery для создания этих элементов, если нет поддержки заполнителей - person jay; 20.01.2012