jquery删除空下拉列表

时间:2015-09-26 16:59:37

标签: jquery forms

我有一个搜索表单,其中包含一些用户可以留空的下拉列表。现在我想在提交表单之前删除这些选择元素。

我尝试了这个,但是使用此功能我的所有选择下拉列表都被删除了:

$('select option[value=""]').parent().remove();

感谢您的帮助 干杯 担

3 个答案:

答案 0 :(得分:1)

我假设您的所有选项都有一个值为""的选项,该选项用作空选项。

然后你的jquery调用有效地删除了所有这些选择。

当您想要选择并删除用户未设置的其他选项时,您可以写下:

var s = jQuery("select").filter(function() {
    return !this.value;
}).remove();

答案 1 :(得分:0)

您应该更改视图。创建选择时使用“空”选项,如:

<form class="form">
    <select id="select1">
        <option value="-1"> - </option>
        ....
    </select>

    <select id="select2">
        <option value="-1"> - </option>
        ....
    </select>
</form>

然后在提交表单时删除所有选择。我不明白为什么你要删除它们......你是否正在进行Ajax调用以提交表单?

$(document).ready(function() {
    $('.form').submit(function(e) {
       var selects = $(this).find('select');

       $.each(selects, function(idx, value) {
          if($(this).val() === -1) {
              $('.form').find($(this).attr('id')).remove();
          }
       })
    });
});

答案 2 :(得分:0)

假设如果选择了第一个选项 - 意味着没有选择下拉列表,我建议:

$("option:first-child:selected")

选择所有选中的第一个“选项”标签(默认情况下,如果没有选择其他任何选项)。 你可以选择他们的父母,然后像以前那样删除。

希望有帮助