Я пытаюсь создать два раскрывающихся окна, чтобы при выборе значения из первого, второе заполняется значениями, которые зависят от первого. Я получил код для первой части от about.com, но не мог понять, как связать второй раскрывающийся список с веб-страницами.
Например, я хочу связать "первый вариант - вариант один" с google.com и "первый выбор - вариант два" на yahoo.com. Где я могу добавить ссылку в код?
Вот коды:
<form name="myform">
<div align="center">
<select name="optone" size="1" onchange="setOptions(document.myform.optone.options[document.myform.optone.selectedIndex].value);">
<option selected="selected" value=" "></option>
<option value="1">First Choice</option>
<option value="2">Second Choice</option>
<option value="3">Third Choice</option>
</select>
<select name="opttwo" size="1">
<option selected="selected" value=" ">Please select one of the options above first</option>
</select>
</div>
</form>
<script type="text/javascript">
function setOptions(chosen) {
var selbox = document.myform.opttwo;
selbox.options.length = 0;
if (chosen == " ") {
selbox.options[selbox.options.length] = new Option('Please select one of the options above first',' ');
}
if (chosen == "1") {
selbox.options[selbox.options.length] = new
Option('first choice - option one','oneone');
selbox.options[selbox.options.length] = new
Option('first choice - option two','onetwo');
}
if (chosen == "2") {
selbox.options[selbox.options.length] = new
Option('second choice - option one','twoone');
selbox.options[selbox.options.length] = new
Option('second choice - option two','twotwo');
}
if (chosen == "3") {
selbox.options[selbox.options.length] = new
Option('third choice - option one','threeone');
selbox.options[selbox.options.length] = new
Option('third choice - option two','threetwo');
}
}
</script>
может ли кто-нибудь дать мне пример кода? помощь очень ценится, спасибо.
Попробуй это..
function setOptions(chosen) {
var selbox = document.myform.opttwo;
selbox.options.length = 0;
if (chosen == " ") {
selbox.options[selbox.options.length] = new
Option('Please select one of the options above first',' ');
}
if (chosen == "1") {
selbox.options[selbox.options.length] = new
Option('select one','');
selbox.options[selbox.options.length] = new
Option('first choice - option one','http://www.google.co.in');
selbox.options[selbox.options.length] = new
Option('first choice - option two','http://www.Yahoo.com');
}
if (chosen == "2") {
selbox.options[selbox.options.length] = new
Option('select one','');
selbox.options[selbox.options.length] = new
Option('second choice - option one','twoone');
selbox.options[selbox.options.length] = new
Option('second choice - option two','twotwo');
}
if (chosen == "3") {
selbox.options[selbox.options.length] = new
Option('select one','');
selbox.options[selbox.options.length] = new
Option('third choice - option one','threeone');
selbox.options[selbox.options.length] = new
Option('third choice - option two','threetwo');
}
}
$.change()
логику с $.change()
. И получить текущее значение от $.val()
до
определить, куда пользователь хочет перенаправляться.
В этом примере предполагается, что местоположение хранится непосредственно в самом значении.
$(".mySelect").change(function(e){
window.location = $(this).val();
});
Используйте этот код:
var selectEle = document.getElementsByName('opttwo')[0];
selectEle.onchange = function(){
var val = selectEle.options[selectEle.selectedIndex].text;
alert(val);
switch(val) {
case "first choice - option one":
location.href="http://www.google.com";
break;
case "first choice - option two":
location.href="http://www.google.com";
break;
}
};