如果选择/更改了值,则从select中隐藏/删除选项值

时间:2014-01-23 20:12:01

标签: javascript jquery html

我想在从另一个下拉列表中选择某个值时隐藏或删除<option value=" "></option>

所以这就是我需要它的方式:

<Select id="first">
<option value="1">one</option>
<option value="2">two</option>
</select>

现在,当选择了two选项时,下面的下拉列表的第一个值是一个空白字符串"",应该从选择中获得removehide

<select id="too">
<option value=""></option>
<option value="time"time</option>
</select>

JQuery是一个非常有效的库,我仍然作为一个初学者进入它。任何有关如何做到这一点的帮助都将是一个很大的帮助

3 个答案:

答案 0 :(得分:2)

$( "#first" ).change(function() {
    if(2 == $(this).val()){
        $("#too").children()[0].remove();
    }
});

http://jsfiddle.net/NHM28/

答案 1 :(得分:0)

这是您的解决方案普通javascript

<html>
<Select id="firstSelect">
<option value="1">one</option>
<option value="2">two</option>
</select>


<select id="secondSelect">
<option value=""></option>
<option value="time">time</option>
</select>

<script>
    var node = document.getElementById("firstSelect");
    node.addEventListener('change', removeOptionTag);

    function removeOptionTag(){
        var secNode = document.getElementById('secondSelect');
        var allTags = secNode.getElementsByTagName('option');
        secNode.removeChild(allTags[0]);
    }
</script>

</html>

答案 2 :(得分:0)

这是一种做法。
HTML:

<select>
    <option value=""></option>
    <option value="1">one</option>
    <option value="2">two</option>
</select>

JS:

$(document).ready(function(){
    $("select").click(function(){
        if($("select option:selected").val() != ""){
            $("select option[value='']").hide();
        }
    });
});

http://jsfiddle.net/9w6cN/