jQuery从选择中删除选项

2020/10/12 08:21 · javascript ·  · 0评论

我有一个包含5个选择的页面,所有选择都有一个类名'ct'。我需要在运行onclick事件时从每个选择中删除值为“ X”的选项。我的代码是:

$(".ct").each(function() {
    $(this).find('X').remove();
   });

我要去哪里错了?

尝试这个:

$(".ct option[value='X']").each(function() {
    $(this).remove();
});

或更简洁地说,这同样适用:

$(".ct option[value='X']").remove();
$('.ct option').each(function() {
    if ( $(this).val() == 'X' ) {
        $(this).remove();
    }
});

要不就

$('.ct option[value="X"]').remove();

要点是find接受选择器字符串,通过输入选择器字符串,x您正在寻找名为的元素x

find()需要一个选择器,而不是一个值。这意味着您需要以与使用常规jQuery函数($('selector')相同的方式来使用它

因此,您需要执行以下操作:

$(this).find('[value="X"]').remove();

请参阅jQuery查找文档。

它适用于选项标签或文本字段:

$("#idname option[value='option1']").remove();

如果您的下拉菜单位于表中,并且没有该表的ID,则可以使用以下jquery:

var select_object = purchasing_table.rows[row_index].cells[cell_index].childNodes[1];
$(select_object).find('option[value='+site_name+']').remove();

对于<1.8的jquery,可以使用:

$('#selectedId option').slice(index1,index2).remove()

删除特定范围的选择选项。

当我执行删除操作时,该选项仍保留在视图中的ddl中,但在html中消失了(如果您检查页面)

$("#ddlSelectList option[value='2']").remove(); //removes the option with value = 2
$('#ddlSelectList').val('').trigger('chosen:updated'); //refreshes the drop down list

迭代列表并使用查找删除多个项目。响应包含一个整数数组。$('#OneSelectList')是一个选择列表。

$.ajax({
    url: "Controller/Action",
    type: "GET",
    success: function (response) {
        // Take out excluded years.
        $.each(response, function (j, responseYear) {
            $('#OneSelectList').find('[value="' + responseYear + '"]').remove();
        });
    },
    error: function (response) {
        console.log("Error");
    }
});
本文地址:http://javascript.askforanswer.com/jquerycongxuanzezhongshanchuxuanxiang.html
文章标签: ,   ,  
版权声明:本文为原创文章,版权归 javascript 所有,欢迎分享本文,转载请保留出处!

文件下载

老薛主机终身7折优惠码boke112

上一篇:
下一篇:

评论已关闭!