Выпадающее поле при выборе пункта радио кнопки
Всем привет!
Прошу помочь новичку с таким моментом. Необходимо сделать, чтобы при выборе одного из пунктов меню, появлялось текстовое поле. Вот моя конструкция <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, время: 08:21. |