2 динамических выпадающих со ссылкой

0

Я пытаюсь создать два раскрывающихся окна, чтобы при выборе значения из первого, второе заполняется значениями, которые зависят от первого. Я получил код для первой части от 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>

http://jsbin.com/iquyo5/57/

может ли кто-нибудь дать мне пример кода? помощь очень ценится, спасибо.

Теги:

3 ответа

0
Лучший ответ

Попробуй это..

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');
}
}
0

$.change() логику с $.change(). И получить текущее значение от $.val() до
определить, куда пользователь хочет перенаправляться.

В этом примере предполагается, что местоположение хранится непосредственно в самом значении.

 $(".mySelect").change(function(e){
    window.location = $(this).val();
 });
0

Используйте этот код:

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;
  }
};

Ещё вопросы

Сообщество Overcoder
Наверх
Меню