2017-05-06 96 views
0

在下拉列表中选择一个值后,我想在此下添加新的下拉列表,并选择除选定列外的所有值。对于第三,第四,......相同的方式。对于第三个下拉值将全部来自第二个,除了选定的值。接下来就是这样下降。从下拉列表中选取所有值除了选中

在javaScript中这样做的方法是什么?

HTML元素...

<select id="president" name="president" type="text"> 
    <option value="0">Select President</option> 
    <option value="1">Name A</option> 
    <option value="2">Name B</option> 
    <option value="3">Name C</option> 
    <option value="4">Name D</option> 
    <option value="5">Name E</option> 
    <option value="6">Name F</option> 
    <option value="7">Name G</option> 
    <option value="8">Name H</option> 
    <option value="9">Name I</option> 
</select> 
<select id="vicepresident" name="vicepresident" type="text"> 
    <option value="0">Select Vice President</option> 
</select> 
+0

遍历'president'中的所有选项。如果它的索引不等于'selectedIndex',则将一个具有相同值和文本的选项附加到'vicepresident'。 – Barmar

+0

你为什么要这样做呢?什么是用例? –

+0

@AchachalSharma你可以用它来避免重复的选择。 –

回答

0

得到了我的结果.........

<select class="slctfield" id="president" name="president" type="text"> 
    <option value="0">Select President</option> 
    <option value="1">Name A</option> 
    <option value="2">Name B</option> 
    <option value="3">Name C</option> 
    <option value="4">Name D</option> 
    <option value="5">Name E</option> 
    <option value="6">Name F</option> 
    <option value="7">Name G</option> 
    <option value="8">Name H</option> 
    <option value="9">Name I</option> 
</select> 
<select class="slctfield" id="vicepresident" name="vicepresident" type="text"></select> 

<script src="//code.jquery.com/jquery-1.11.0.min.js"></script> 
<script type="text/javascript"> 
    $('.slctfield').on('click', function() { 
     var i = $('.slctfield').index(this); 
     var j = i+1; 
     var $options = $(this).find('option'); 
     var $tempDiv = $('<div/>'); 
     $options = $options.each(function (idx, option) { 
     if (!$(option).prop('selected')) { 
      $tempDiv.append($(option).clone()); 
     } 
    }); 
    $('.slctfield:eq('+j+')').show(); 
    $('.slctfield:eq('+j+')').html($tempDiv.html()); 
    }); 
</script> 

在这里您可以用 'slctfield' 类中添加更多的选择字段。

0

把所有的选项在数组中,并传递给“总统”,然后得到所选择的指数和追加除了这一个数组副总统的所有值。

相关问题