Jump to content
  • 0

упрастить дин выбор select


vrazbros
 Share

Question

есть 2 selecta:

1 в первом категория 1, категория 2

2 в втором: вар 1, вар 2, вар 3.

Нужно сделать чтобы при выборе первого селекта 2 категории появл второй селект, а при выборе 1 кат сразу скрывался.

нашел вот такой вариант но что то тут все запутано. Как то это реализовать попроше можно ? без обьектов :)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/tr/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>Изменение значения в поле Select (c) Aliance</title>
<script type="text/javascript">
var regiondb = new Object()
regiondb["africa"] = [{value:"1", text:"Каир"},
{value:"2", text:"Триполи"},
{value:"3", text:"Алжир"},
{value:"4", text:"Претория"}];
regiondb["asia"] = [{value:"1", text:"Банкок"},
{value:"2", text:"Дели"},
{value:"3", text:"Улан-Батор"},
{value:"4", text:"Джакарта"},
{value:"5", text:"Токио"}];

function setCities(chooser) {
var cityChooser = chooser.form.elements["city"];
// обнуляем список
cityChooser.options.length = 0;
// получаем value для массива regiondb
var choice = chooser.options[chooser.selectedIndex].value;
var db = regiondb[choice];
// вставляем первый элемент
cityChooser.options[0] = new Option("Город: ", "", true, false);
console.log('choice',choice);
var pl = document.getElementById('city');
if(choice == 'asia') {

pl.style.display = "none";
} else {
pl.style.display = "";
}

if (choice != "") {
for (var i = 0; i < db.length; i++) {
cityChooser.options[i + 1] = new Option(db[i].text, db[i].value);
}
}
}
</script>
</head>
<body>
<form name="dealers" action="">
<select name="continent" onchange="setCities(this)">
<option value="africa">Африка</option>
<option value="asia">Азия</option>
</select>
<select name="city" id="city">
<option value="" selected>Город: </option>
</select>
</form>
</body>
</html

Link to comment
Share on other sites

1 answer to this question

Recommended Posts

  • 0

Вот на этой странице приведен результат, который тебе нужен. После просмотра кода поймешь, что твой вариант очень даже простой.

http://www.nvidia.com/Download/index.aspx?lang=en-us

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share

  • Обсуждения

    • Актуальные контакты: Telegram: @Nikker_web E-Mail:   tarasevich.email@gmail.com Портфолио https://www.behance.net/d4d4186e Разрабатываю дизайн групп в соц сетях, сайтов, приложений, другой дизайн под заказ    
    • Актуальные контакты: Telegram: @Nikker_web E-Mail:   tarasevich.email@gmail.com   Разрабатываю дизайн групп в соц сетях, сайтов, приложений, другой дизайн под заказ   Портфолио https://www.behance.net/d4d4186e
    • Доброго всем времени суток. Прошу помощи. Научите принципу изменения футера. Движок Xenforo. Версия 2.2.10. Стиль дефолтный. Что именно нужно в итоге на фото примере. Мой шаблон app.footer less имеет следующее значение.  .p-footer { .xf-publicFooter(); a { .xf-publicFooterLink(); } } .p-footer-inner { .m-pageWidth(); .m-pageInset(); padding-top: @xf-paddingMedium; padding-bottom: @xf-paddingLarge; } .p-footer-row { .m-clearFix(); margin-bottom: -@xf-paddingLarge; } .p-footer-row-main { float: left; margin-bottom: @xf-paddingLarge; } .p-footer-row-opposite { float: right; margin-bottom: @xf-paddingLarge; } .p-footer-linkList { .m-listPlain(); .m-clearFix(); > li { float: left; margin-right: .5em; &:last-child { margin-right: 0; } a { padding: 2px 4px; border-radius: @xf-borderRadiusSmall; &:hover { text-decoration: none; background-color: fade(@xf-publicFooterLink--color, 10%); } } } } .p-footer-rssLink { > span { position: relative; top: -1px; display: inline-block; width: 1.44em; height: 1.44em; line-height: 1.44em; text-align: center; font-size: .8em; background-color: #4682B4; border-radius: 2px; } .fa-rss { color: white; } } .p-footer-copyright { margin-top: @xf-elementSpacer; text-align: center; font-size: @xf-fontSizeSmallest; } .p-footer-debug { margin-top: @xf-paddingLarge; text-align: right; font-size: @xf-fontSizeSmallest; .pairs > dt { color: inherit; } } @media (max-width: @xf-responsiveMedium) { .p-footer-row-main, .p-footer-row-opposite { float: none; } .p-footer-copyright { text-align: left; padding: 0 4px; // aligns with other links } }  
    • Нужны сайты с примерами верстки, типа https://css-tricks.com/. Типовые приемы и нестандартные на все случаи жизни. Накидайте ссылок.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy