У меня есть форма, которая имеет значения по умолчанию, описывающие, что должно идти в поле (заменяя метку). Когда пользователь фокусирует поле эта функция называется:Изменить обработчик onfocus элемента с помощью Javascript?
function clear_input(element)
{
element.value = "";
element.onfocus = null;
}
OnFocus устанавливается в нуль, так что если пользователь кладет что-то в этой области и решает изменить его, их ввод не стерта (так это только стерто один раз). Теперь, если пользователь переходит к следующему полю без ввода каких-либо данных, то значение по умолчанию восстанавливается с помощью этой функции (так называемый ONBLUR):
function restore_default(element)
{
if(element.value == '')
{
element.value = element.name.substring(0, 1).toUpperCase()
+ element.name.substring(1, element.name.length);
}
}
Просто так получилось, что значения по умолчанию были имена из поэтому вместо добавления идентификатора я просто манипулировал свойством name. Проблема в том, что если они пропускают элемент, то событие onfocus сбрасывается с помощью clear_input, но затем никогда не восстанавливается.
Я добавил
element.onfocus = "javascript:clear_input(this);";
В restore_default функции, но это не работает. Как мне это сделать?
это очень полезно Большое спасибо .. – 2012-03-12 09:38:01
с примером paramters было именно то, что мне было нужно, никогда бы не догадался, что синтаксис. – eselk 2012-11-28 17:32:58