Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 20.12.2010, 20:20
Интересующийся
Отправить личное сообщение для Андрей28 Посмотреть профиль Найти все сообщения от Андрей28
 
Регистрация: 20.12.2010
Сообщений: 11

Выпадающее поле при выборе пункта радио кнопки
Всем привет!

Прошу помочь новичку с таким моментом.
Необходимо сделать, чтобы при выборе одного из пунктов меню, появлялось текстовое поле.

Вот моя конструкция
<table width="536" cellpadding="1">
          <?php foreach ($shipping_methods as $shipping_method) { ?>
          <tr>
            <td colspan="3"><!--<b><?php echo $shipping_method['title']; ?></b>--></td>
          </tr>
          <?php if (!$shipping_method['error']) { ?>
          <?php foreach ($shipping_method['quote'] as $quote) { ?>
          <tr>
            <td width="1"><label for="<?php echo $quote['id']; ?>">
                <?php if ($quote['id'] == $shipping || !$shipping) { ?>
				<?php $shipping = $quote['id']; ?>
                <input type="radio" name="shipping_method" value="<?php echo $quote['id']; ?>" id="<?php echo $quote['id']; ?>" checked="checked" style="margin: 0px;" />
                <?php } else { ?>
                <input type="radio" name="shipping_method" value="<?php echo $quote['id']; ?>" id="<?php echo $quote['id']; ?>" style="margin: 0px;" />
                <?php } ?>
              </label></td>
            <td width="534"><label for="<?php echo $quote['id']; ?>" style="cursor: pointer;"><?php echo $quote['title']; ?></label></td>
            <td width="100" align="right"><label for="<?php echo $quote['id']; ?>" style="cursor: pointer;"><?php echo $quote['text']; ?></label></td>
          </tr>
          <?php } ?>
          <?php } else { ?>
          <tr>
            <td colspan="3"><div class="error"><?php echo $shipping_method['error']; ?></div></td>
          </tr>
          <?php } ?>
          <?php } ?>
        </table>
        <div style="padding-left:20px">Адрес: <input name="comment" style="width: 200px" value="<?php echo $comment; ?>" /></div>

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

Последний раз редактировалось Андрей28, 20.12.2010 в 20:22.
Ответить с цитированием
  #2 (permalink)  
Старый 20.12.2010, 20:38
Аватар для Vulkan
Профессор
Отправить личное сообщение для Vulkan Посмотреть профиль Найти все сообщения от Vulkan
 
Регистрация: 25.05.2010
Сообщений: 511

Самый банальный метод:
<table width="536" cellpadding="1">
          <?php foreach ($shipping_methods as $shipping_method) { ?>
          <tr>
            <td colspan="3"><!--<b><?php echo $shipping_method['title']; ?></b>--></td>
          </tr>
          <?php if (!$shipping_method['error']) { ?>
          <?php foreach ($shipping_method['quote'] as $quote) { ?>
          <tr>
            <td width="1"><label for="<?php echo $quote['id']; ?>">
                <?php if ($quote['id'] == $shipping || !$shipping) { ?>
				<?php $shipping = $quote['id']; ?>
                <input type="radio" onclick="document.getElementById('address').style.display='block';" name="shipping_method" value="<?php echo $quote['id']; ?>" id="<?php echo $quote['id']; ?>" checked="checked" style="margin: 0px;" />
                <?php } else { ?>
                <input type="radio" onclick="document.getElementById('address').style.display='block';" name="shipping_method" value="<?php echo $quote['id']; ?>" id="<?php echo $quote['id']; ?>" style="margin: 0px;" />
                <?php } ?>
              </label></td>
            <td width="534"><label for="<?php echo $quote['id']; ?>" style="cursor: pointer;"><?php echo $quote['title']; ?></label></td>
            <td width="100" align="right"><label for="<?php echo $quote['id']; ?>" style="cursor: pointer;"><?php echo $quote['text']; ?></label></td>
          </tr>
          <?php } ?>
          <?php } else { ?>
          <tr>
            <td colspan="3"><div class="error"><?php echo $shipping_method['error']; ?></div></td>
          </tr>
          <?php } ?>
          <?php } ?>
        </table>
        <div style="padding-left:20px; display:none;" id="address">Адрес: <input name="comment" style="width: 200px" value="<?php echo $comment; ?>" /></div>

Последний раз редактировалось Vulkan, 21.12.2010 в 12:37.
Ответить с цитированием
  #3 (permalink)  
Старый 20.12.2010, 22:09
Интересующийся
Отправить личное сообщение для Андрей28 Посмотреть профиль Найти все сообщения от Андрей28
 
Регистрация: 20.12.2010
Сообщений: 11

Спасибо тебе большое за помощь, Вулкан. Всё отлично работает.
Вот только ещё вопрос.

Поле появляется при нажатии на один из выбранных пунктов.
А как сделать так, чтобы когда переходишь снова на другой пункт, это поле пропадало?
Ответить с цитированием
  #4 (permalink)  
Старый 21.12.2010, 12:39
Аватар для Vulkan
Профессор
Отправить личное сообщение для Vulkan Посмотреть профиль Найти все сообщения от Vulkan
 
Регистрация: 25.05.2010
Сообщений: 511

Ну как вариант подставить если нужно чтобы при щелчке на пункт поле пропадала добавить ему свойство:
onclick="document.getElementById('address').style.display='none';"
Ответить с цитированием
  #5 (permalink)  
Старый 21.12.2010, 13:49
Интересующийся
Отправить личное сообщение для Андрей28 Посмотреть профиль Найти все сообщения от Андрей28
 
Регистрация: 20.12.2010
Сообщений: 11

Сообщение от Vulkan Посмотреть сообщение
Ну как вариант подставить если нужно чтобы при щелчке на пункт поле пропадала добавить ему свойство:
onclick="document.getElementById('address').style.display='none';"
Попробовал. При нажатии на поле оно действительно пропадает, но тогда нет возможности его заполнить)))
А надо, чтоб при выборе одного пункта радио кнопки оно пропадало, а при выборе другого появлялось. Во как
Ответить с цитированием
  #6 (permalink)  
Старый 21.12.2010, 13:57
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,218

Сообщение от Андрей28
надо, чтоб при выборе одного пункта радио кнопки оно пропадало, а при выборе другого появлялось
Как вариант...

<!DOCTYPE html>
<html>
<head>
<style>
#text {
	display: none;
}
</style>
<script>
function Go() {
	document.getElementById('text').style.display=(document.getElementById('r1').checked)? 'block': 'none'
}
</script>
</head>
<body>
<input type='radio' name='test' id='r1' onclick='Go()' />
</br>
<input type='radio' name='test' id='r2' onclick='Go()' />
<p id='text'>
	Text
</p>
</body>
</html>
Ответить с цитированием
  #7 (permalink)  
Старый 21.12.2010, 13:58
Аватар для Vulkan
Профессор
Отправить личное сообщение для Vulkan Посмотреть профиль Найти все сообщения от Vulkan
 
Регистрация: 25.05.2010
Сообщений: 511

Ну тут уже можно догадаться, чтобы оно появлялось при нажатии на поле добавляете:
onclick="document.getElementById('address').style.display='block';"

чтобы пропадало
onclick="document.getElementById('address').style.display='none';"
Ответить с цитированием
  #8 (permalink)  
Старый 21.12.2010, 14:46
Интересующийся
Отправить личное сообщение для Андрей28 Посмотреть профиль Найти все сообщения от Андрей28
 
Регистрация: 20.12.2010
Сообщений: 11

Всем спасибо за помощь! Решил пока оставить как есть без выпадания поля. Чёт не выходит.
С наступающим новым годом
Ответить с цитированием
  #9 (permalink)  
Старый 21.12.2010, 15:19
Аватар для Vulkan
Профессор
Отправить личное сообщение для Vulkan Посмотреть профиль Найти все сообщения от Vulkan
 
Регистрация: 25.05.2010
Сообщений: 511

что именно не получается, какая ошибка? Выложите код сюда
Ответить с цитированием
  #10 (permalink)  
Старый 21.12.2010, 15:22
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,218

Сообщение от Андрей28
Чёт не выходит
Ну ты даёшь...
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
спрятать/показать поле ввода при нажатии на checkbox g1r Элементы интерфейса 34 16.12.2017 00:34
Вывод изображений и описания при выборе пункта select gustovskiy Элементы интерфейса 31 28.11.2010 01:17
Событие onClick при нажатии пункта меню Lex4e Общие вопросы Javascript 1 25.06.2010 18:31
при выборе radio появляется форма chesters jQuery 1 30.11.2009 11:20
при выборе в 1-ом select соот.-щая инф. отображается в другом select celencer Общие вопросы Javascript 1 24.05.2009 20:38