Консультация № 69328
02.01.2007, 19:52
0.00 руб.
0 1 1
Добрый вечер!

У меня есть форма, где есть текстовое поле, доступность которого для ввода должна зависеть от состояния чекбокса этой же формы.

Т.е. когда пользователь ставит "галочку" в чекбоксе, текстовое поле станосится недоступным для зполнения. Я пользуюсь функцией, которую поместил в приложение.

А в коде чекбокса пишу:

<input name="permanent" type="checkbox" value="1" onchange="disable(this.form, 1)"/>

Вопрос заключается в следующем. Пользователь может изменить свой выбор. Как сделать текстовое поле вновь доступным при снятии "галочки"? Т.е. существует ли действие, противоположное onchange?

Решение использовать вместо одного чекбокса два переключателя мне не очень удобно, так что пока проблему решил добавлением кнопки Reset, но это опять не совсем то...

В общем, если есть возможность реализовать это, не добавляя в форму дополнительных элементов, то подскажите, пожалуйста, как это сделать.

Заранее спасибо!

Приложение:
<script language="JavaScript"><!-- function disable(form, value) { if (value==1) { form.term.disabled = true; } else { form.term.disabled = false; } }//--></script><!-- ... сама форма ... --><input type="text" name="term" maxlength="100" size="60" /> <input name="permanent" type="checkbox" value="1" onchange="disable(this.form, 1)"/>

Обсуждение

Неизвестный
02.01.2007, 20:07
общий
это ответ
Здравствуйте, Денис Сергеевич!
В приложении 2 варианта. Выбирайте...
Второй проще(но есть свои минусы).
Удачи!

Приложение:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html lang="ru"><head><title>disabled</title><meta name="content-type" content="charset=windows-1251"></head><body style="background-color:#fff"><form action="#"><input name="term" type="text" maxlength="100" size="60" /><!--// 1 //--><input name="permanent" type="checkbox" value="1" onchange="if(form.term.disabled) form.term.disabled = false; else form.term.disabled = true;" /><!--// 2 //--><input name="permanent" type="checkbox" value="1" onchange="form.term.disabled = !form.term.disabled" /></form></body></html>
Форма ответа