Вернуться   Дизайнерский форум » ВЕБ-ПРОГРАММИРОВАНИЕ » ASP, Perl, PHP и MySQL

Динамически появляющееся поле в форме

Обсуждение темы Динамически появляющееся поле в форме в разделе ASP, Perl, PHP и MySQL, часть категории ВЕБ-ПРОГРАММИРОВАНИЕ; С проверкой формы я сама разобралась. Теперь возникла другая заморочка. Есть у меня в форме один фопрос, а на него два варианта ответа ...


Закрытая тема
 
Опции темы
Старый 02.02.2007, 21:04   #1
С проверкой формы я сама разобралась. Теперь возникла другая заморочка.
Есть у меня в форме один фопрос, а на него два варианта ответа в виде радио-батонов (например, "тра-ля-ля" и "прочее"). Если пользователь выбирает "нет", то ничего не меняется. Если "да", то рядом должно появиться текстовое поле (для пояснения).
Я пробовала так сделать:
PHP код:
<input name="sreda" type="radio" value="тра-ля-ля" checked>
тра-ля-ля

<input name="sreda" type="radio" value="прочее:">
прочее:
<? if ($_POST['sreda']=="прочее" echo "<input name=\"sreda\" type=\"text\">" ?>
Он ругается на echo. Может надо вообще как-то по другому?
 
Старый 02.02.2007, 21:04
Ссылки
Старый 03.02.2007, 07:08   #2
забыли скобку после =="прочее" закрыть, вот и ругается.
 
Старый 03.02.2007, 14:09   #3
Подсолнух, у вас это поле появится только после отправки формы.

Можно сделать поле, скрыть его c помоьщю CSS (display:none), и при выборе checkbox JavaScript'ом отображать его.

У меня примерно такое же было сделано когда-то. Там, где "Параметры доступа", попереключайте radio-buttons.

Переделать под вашу задачу -- три минуты.

P.S. Не надо обсуждать дизайн сайта по приведенной ссылке.
 
Старый 03.02.2007, 19:57   #4
deMone, спасибо.

Я как раз вчера сама до явы-скрипта добралась. Сделала такой скрипт:

function open_block(id)
{
e=document.getElementByld (id);
if (e.style.display == 'none' || e.style.display =="")
e.style.display="block";
}

А в форме прописано:

<input name="vybor" type="radio" value="что-то там" checked>
природный газ

<input name="vybor" type="radio" value="прочее:" onclick="open_block('new')">
прочее:
<input name="sreda" type="text" id="new" style="display:none;" value="<? echo $_POST['sreda'] ?>">

При это форма открывается, но при выборе "прочее" explorer выдает ошибку: Объект не поддерживает это свойство или метод.
Я читала, что именно функция display не везде поддерживается. Может проблема в этом?

kost , как у вас организовано в форме "затемнение" поля. Что-то я залезла в код странички и заблудилась...
 
Старый 27.02.2007, 14:22   #5
можно докидывать поле с помощью ajax
 
Старый 27.02.2007, 14:39   #6
Alkeeper, хотел написать то же самое! ))

ЛЮДИ! ПОЛЬЗУЙТЕСЬ AJAX-ОМ! ДА ЗДРАВТСТВУЕТ WEB 2.0!!!
 
Старый 27.02.2007, 14:45   #7
Я тут использовал ajax. В первом поле введи любое число.
 
Старый 27.02.2007, 15:55   #8
ivan341, Офигительно! Работает моментально!
 
Старый 27.02.2007, 16:09   #9
Nielson, Спасибо)) Но там еще не доработанно.
 
Старый 27.02.2007, 16:20   #10
ivan341, Что юзал? свою либу или посторонний пакет?
 
Старый 27.02.2007, 16:20
Закрытая тема




Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Новости динамически с другого веб-узла? Frenk Garigan HTML, CSS, JavaScript 2 06.07.2007 14:44
Как динамически поменять фон в ячейке таблицы anthill ASP, Perl, PHP и MySQL 5 02.07.2007 12:50
Не работают динамически устанавливаемые аттрибуты dantistus ASP, Perl, PHP и MySQL 1 13.07.2006 09:45
Создание таблицы MySQL динамически ТехникПТО HTML, CSS, JavaScript 4 03.06.2005 11:27
Как динамически изменять фреймсет ? amalex HTML, CSS, JavaScript 5 04.04.2005 00:30


Текущее время: 02:09. Часовой пояс GMT +4.

Реклама на форуме Условия размещения рекламы
Биржа ссылок Заработай на сайте!
Дизайнерский форум