Выпадающее поле при выборе пункта радио кнопки
Всем привет!
Прошу помочь новичку с таким моментом. Необходимо сделать, чтобы при выборе одного из пунктов меню, появлялось текстовое поле. Вот моя конструкция
<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>
При этом раскладе у меня поле Адрес постоянно присутствует, а нужно чтобы появлялось только при выборе одного пункта. Пожалуйста кто знает - подскажите:help: |
Самый банальный метод:
<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>
|
Спасибо тебе большое за помощь, Вулкан. Всё отлично работает.
Вот только ещё вопрос. Поле появляется при нажатии на один из выбранных пунктов. А как сделать так, чтобы когда переходишь снова на другой пункт, это поле пропадало? |
Ну как вариант подставить если нужно чтобы при щелчке на пункт поле пропадала добавить ему свойство:
onclick="document.getElementById('address').style.display='none';"
|
Цитата:
А надо, чтоб при выборе одного пункта радио кнопки оно пропадало, а при выборе другого появлялось. Во как :) |
Цитата:
<!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>
|
Ну тут уже можно догадаться, чтобы оно появлялось при нажатии на поле добавляете:
onclick="document.getElementById('address').style.display='block';"
чтобы пропадало
onclick="document.getElementById('address').style.display='none';"
|
Всем спасибо за помощь! Решил пока оставить как есть без выпадания поля. Чёт не выходит.
С наступающим новым годом:) |
что именно не получается, какая ошибка? Выложите код сюда
|
Цитата:
|
| Часовой пояс GMT +3, время: 05:34. |