|
Помогите сделать такой select
Есть два селекта:
первый: <select name="dost"> <option value="0">Выберете способ доставки</option> <option value="1">Почтой России (оплата при получении)</option> <option value="2">Курьером по России (Оплата по предоплате)</option> </select> и второй: <select name="pay"> <option value="0">Выберете способ оплаты</option> <option value="1">Наличными при получении</option> <option value="2">Предоплата на Яндекс деньги</option> <option value="3">Предоплата на WebMoney</option> </select> Как сделать если в первом селекте выбран способ почтой России, то во втором селекте автоматом выбирается оплата при получении, а остальные option становятся не активными к выбору. Ну и размеется если выбран способ Курьером по России, то во втором селекте становится неактивным наличными при получении. Надеюсь понятно описал задачу. Заранее спасибо за ответы. |
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.js"></script> <select class="select1" name="dost"> <option value="0">Выберете способ доставки</option> <option value="1">Почтой России (оплата при получении)</option> <option value="2">Курьером по России (Оплата по предоплате)</option> </select> <select class="select2" name="pay"> <option value="0">Выберете способ оплаты</option> <option value="1">Наличными при получении</option> <option value="2">Предоплата на Яндекс деньги</option> <option value="3">Предоплата на WebMoney</option> </select> <script> $('.select1').change(function() { switch($(this).val()) { case '0': //Действие выполнится при выборе первого option break; case '1': //Действие выполнится при выборе второго option break; case '2': //Действие выполнится при выборе третьего option break; } }); </script> |
Цитата:
Цитата:
|
Нечто вроде такого...
<!DOCTYPE html> <html> <head> <!-- <script src="http://code.jquery.com/jquery-latest.js"></script> <link rel="stylesheet" type="text/css" href="tmp.css" /> --> <style type="text/css"> #case1, #case2 { display: none; } </style> <script type="text/javascript"> function test(Case) { switch(Case) { case '1': document.getElementById('case1').style.display='inline'; document.getElementById('case2').style.display=''; break; case '2': document.getElementById('case1').style.display=''; document.getElementById('case2').style.display='inline'; break; default: document.getElementById('case1').style.display=''; document.getElementById('case2').style.display=''; }; }; </script> </head> <body> <label>Выберете способ доставки <select name="dost" onchange='test(this.value);'> <option value="0"></option> <option value="1">Почтой России (оплата при получении)</option> <option value="2">Курьером по России (Оплата по предоплате)</option> </select> </label> <div> <p id='case1'>Оплата наличными при получении</p> <label id='case2'>Выберете способ оплаты: <select name="pay"> <option value="0"></option> <option value="2">Предоплата на Яндекс деньги</option> <option value="3">Предоплата на WebMoney</option> </select> </label> </div> </body> </html> |
Цитата:
|
tsigel - Зоркий сокол! :D
|
Всем спасибо за ответы) воспользовался способом ksa, работает)
|
Возникла такая проблема, у меня идет проверка через js правильность заполнения полей..
function send(){ var f=document.forms['checkout']; if(!f.name.value || f.name.value=='') alert('Введите Ваше ФИО!'); else if(!f.address.value || f.address.value=='') alert('Введите Ваш адрес!'); else if (f.dost.selectedIndex == 0) alert('Выберите способ доставки!'); else if (f.pay.selectedIndex == 0) alert('Выберите способ оплаты!'); else f.submit(); } Как сделать чтобы не вылазила ошибка вы не выбрали способ оплаты?) |
Цитата:
|
а как эт изменить нужно? Сори, но js вообще не курю((
|
Часовой пояс GMT +3, время: 00:29. |
|