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

×
×
  • 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