2012-09-19 68 views
0

这里更新选项是什么,我已经开始做的:http://jsfiddle.net/nd9ny/添加/删除/从选择输入

现在它不工作,我希望它。

我想在每次添加新选择输入或删除输入时更新选项。

例如,我们有我们的这些选项第一选择输入:

<select> 
    <option value="1"></option> 
    <option value="2"></option> 
    <option value="3"></option> 
    <option value="4"></option> 
</select> 

当我添加新的输入到我的网页,我想我的功能更新所有输入和删除从新选择的选项他们。

<select> 
    <option value="1" selected></option> 
    <option value="3"></option> // The second one is removed 
    <option value="4"></option> 
</select> 

<select> 
    <option value="2" selected></option> // The first one is removed 
    <option value="3"></option> 
    <option value="4"></option> 
</select> 

然后,如果我删除第一输入,第二个就变成了:

<select> 
    <option value="1"></option> 
    <option value="2" selected></option> 
    <option value="3"></option> 
    <option value="4"></option> 
</select> 

纯JavaScript代码的需要。

回答

1

您可以尝试以下解决方案:

- CSS:

.hidden { 
    display: none; 
} 

- JS功能:

function hide_selected(el) { 

    var index = el.selectedIndex; 

    // Show every options 
    for(var i=0; i<el.length; i++) 
     el[i].className=""; 

    // Hide the selected one 
    el[index].className="hidden"; 
} 

- HTML例如:

<body> 
    <select onchange="javascript:hide_selected(this);"> 
     <option value="1" class="hidden" selected="selected">1</option> 
     <option value="2" class="">2</option> 
     <option value="3" class="">3</option> 
     <option value="4" class="">4</option> 
    </select> 
</body> 

注意:此功能已经过Firefox测试,您可能需要检查此功能是否适用于其他浏览器。

希望这会有帮助

+0

这是非常好的主意,只是隐藏他们:) – Hypn0tizeR