从DropDownList中删除值

时间:2015-02-23 07:57:11

标签: jquery drop-down-menu option

$("#Month option:selected").val()

这是从我的下拉列表中给我一个选定的值。但我想删除或隐藏我的下拉列表中的一些选项,我可以帮忙吗?

$("Day option").value("31").empty();

是否有效。请给我解决方案。

    function ValidatefuneralDate() {
    var today;
    var currentDate = new Date();
    var year = currentDate.getFullYear();
    var month = currentDate.getMonth() + 1;  
    var day = currentDate.getDate();
    if (window.location.href.indexOf("en-US") > -1) 
    {
        today = month + '/' + day + '/' + year;
        var selectedDate = $("#Month option:selected").val() 
        +'/'+$("#Day option:selected").text() + '/' + 
        $("#Year option:selected").text();
    }
    else 
   {
        today = day + '/' + month + '/' + year;
        var selectedDate = $("#Day option:selected").
        text() + '/' +   $("#Month option:selected").
        val() + '/' + $("#Year option:selected").text();
    }
    if ($("#Month option:selected").val("2"))
    {
        $("#Month option[text='31']").hide();
        $("#Month option[text='30']").hide();
        $("#Month option[text='29']").hide();
    }
    if (selectedDate < today) {
        $("#lblFeneralDate").html('@Html.
        R(VirtualPath, "ValidatefuneralDate")');
        return false;
    }
    else { return true;}
   }

这是我的jquery函数和

<div class="DDLabel">
Day:@Html.DropDownList("Day", new SelectList(new List<object>
{
                                        new { value =1, text = "1"},
                                        new { value =2, text = "2"},
                                        new { value =3 ,text ="3"},
                                        new { value =4, text = "4"},
                                        new { value =5, text = "5"},
                                        new { value =6, text = "6"},
                                        new { value =7, text = "7"},
                                        new { value =8, text = "8"},
                                        new { value =9, text = "9"},
                                        new { value =10, text = "10"},
                                        new { value =11, text = "11"},
}, "value", "text", 1), 
new { @onchange = "e_date_changed();", @style ="width:66px" })

这是DDL这样的1到31天。

2 个答案:

答案 0 :(得分:0)

您可以使用属性相等选择器按值定位元素,并使用.remove()删除或.hide()隐藏元素:

$("#Month option[value='33']").remove();

$("#Month option[value='33']").hide();

答案 1 :(得分:0)

您可以使用.remove()从DOM中完全删除元素。

$("#Month option[value='whatever']").remove();

修改

$("#Month option[value='whatever']").hide();

你可以稍后通过

取回它们
$("#Month option[value='whatever']").show();