2014-02-24 47 views
0

說我有數字1-4和選擇HTML標籤中列出的「無」選項。我想將這些標籤中的四個放在頁面上,用戶可以下拉併爲每個頁面選擇一個數字,但不能兩次選擇相同的數字。如果他們將其中一個選擇框切換回無,則該號碼應該再次可用。我在另一個線程中發現了一些代碼(如下所示),這會阻止您選擇下一個框中的值,但該值會永久刪除。我希望保留這些選項,最好按照它們開始的順序。如何在選擇某個值時刪除其他下拉列表中的值,然後在這些值再次變爲可用時還原這些值?

<script> 
document.getElementById("select1").addEventListener("change", 
function(select) 
{ 
    if (this.value != "") 
    { 
     var select2 = document.getElementById("select2"); 
     for (var i = 0; i < select2.options.length; i++) 
     { 
      if (this.value == select2.options[i].value) 
      { 
       select2.options[i] = null; 
       break; 
      } 
     } 
    } 
}, false); 
</script> 

回答

0

您可以在數組中創建相同的列表。在列表中移除時,您的數組仍然包含值。當您再次需要時,將數組中的選擇值重新放入選項中。

相關問題