我有一个页面有5个选择,全部都有类名'ct'。我需要在运行onclick事件时从每个选择中删除一个值为'X'的选项。我的代码是:jQuery从选择中删除选项
$(".ct").each(function() {
$(this).find('X').remove();
});
我哪里错了?
我有一个页面有5个选择,全部都有类名'ct'。我需要在运行onclick事件时从每个选择中删除一个值为'X'的选项。我的代码是:jQuery从选择中删除选项
$(".ct").each(function() {
$(this).find('X').remove();
});
我哪里错了?
试试这个:
$(".ct option[value='X']").each(function() {
$(this).remove();
});
或者更简洁,这将很好的工作:
$(".ct option[value='X']").remove();
find()
需要选择,而不是一个值。这意味着您需要像使用常规jQuery函数一样使用它($('selector')
)。
因此,你需要做这样的事情:
$(this).find('[value="X"]').remove();
见jQuery的find文档。
在你将变量传递给追加值的情况下要好得多 – Neurothustra 2017-05-21 22:26:18
$('.ct option').each(function() {
if ($(this).val() == 'X') {
$(this).remove();
}
});
或者只是
$('.ct option[value="X"]').remove();
主要的一点是,find
需要选择字符串,通过喂养它x
你正在寻找一个名为x
元素。
+1我喜欢这个答案我认为它更好,因为我可以测试'X'或者'
I使用这个答案,因为我不得不删除val = 0以外的所有选项。我使用了!= 0并且像魅力一样工作:) – 2015-11-19 06:51:01
如果你的下拉列表是一个表,你没有身份证,那么你可以使用下面的jQuery:
var select_object = purchasing_table.rows[row_index].cells[cell_index].childNodes[1];
$(select_object).find('option[value='+site_name+']').remove();
jQuery的< 1.8可以使用:
$('#selectedId option').slice(index1,index2).remove()
去除选择素的especific范围t选项。
这对我有效。谢谢。什么是sytax限制这与.ct与选定的值=''? – user135498 2009-10-05 04:12:25
我通过重新排序我的电话解决了这个问题。谢谢。 – user135498 2009-10-05 04:21:58
它为我工作也............谢谢。 – 2012-07-06 12:22:32