2016-07-28 76 views
0

我有两个下拉列表与值。当我在第一个选择一个值时,我想在第二个返回具有相同选定值的元素。第二个列表取决于第一个列表选择。我怎么能这样做?嵌套下拉列表:取决于值

<div class="form-group"> 
    <label for="first">First list</label> 
     <select id="first" class="form-control" role="listbox" onchange="filterList();"> 
      <option value="Select level 1" selected="selected">Select...</option> 
      <option value="Option 1">Option 1</option> 
      <option value="Option 2">Option 2</option> 
     </select> 
</div> 
<div class="form-group"> 
    <label for="second">Second list</label> 
     <select id="second" class="form-control" role="listbox"> 
      <option value="Select level 2" data-group="Select" selected="selected">Select...</option> 
      <option value="Option 1 - 1" data-group="Option 1">First list 1 - Element 1</option> 
      <option value="Option 1 - 2" data-group="Option 1">First list 1 - Element 2</option> 
      <option value="Option 2 - 1" data-group="Option 2">First list 2 - Element 1</option> 
      <option value="Option 2 - 2" data-group="Option 2">First list 2 - Element 2</option> 
     </select> 
</div> 

jQuery脚本

function filterList(){ 

    var first = $("#first").find('option:selected').text(); // stores first list selected elements 

    $("#option-container").children().appendTo("#second"); // moves <option> contained in #option-container back to their <select> 

    var toMove = $("#second").children("[data-group!='"+first+"']"); // selects elements to move out 

    toMove.appendTo("#option-container"); // moves elements in #option-container 

    $("#second").removeAttr("disabled"); // enables select 
}; 
+0

首先,在第二次选择时不要使用'value'作为此目的。否则,您将无法确定在第二个下拉列表中选择了哪个选项。 – kalsowerus

+0

我看到你更新了你的'