我有一个有5个选择的页面,都有一个类名“ct”。我需要从每个选择中删除值为“X”的选项,同时运行onclick事件。我的代码是:
$(".ct").each(function() {
$(this).find('X').remove();
});
我哪里说错了?
我有一个有5个选择的页面,都有一个类名“ct”。我需要从每个选择中删除值为“X”的选项,同时运行onclick事件。我的代码是:
$(".ct").each(function() {
$(this).find('X').remove();
});
我哪里说错了?
当前回答
如果你的下拉列表是在一个表中,你没有id,那么你可以使用下面的jquery:
var select_object = purchasing_table.rows[row_index].cells[cell_index].childNodes[1];
$(select_object).find('option[value='+site_name+']').remove();
其他回答
我尝试了这段代码:
$ (" # select列表")空虚()
尝试删除选定的
$('#btn-remove').click(function () {
$('.ct option:selected').each(function () {
$(this).remove();
});
});
试试这个:
$(".ct option[value='X']").each(function() {
$(this).remove();
});
或者更简洁地说,这也同样有效:
$(".ct option[value='X']").remove();
在删除一个选项时,我最喜欢做的事情就是根本不删除它。对于那些想要删除该选项但稍后可能想重新添加它,并确保以正确的顺序重新添加它的人来说,此方法是有益的。
首先,我实际上禁用了该选项。
$("#mySelect").change(
function() {
$("#mySelect").children('option[value="' + $(this).val() + '"]').prop("disabled", true);
$("#re-addOption").click(
function() {
$("#mySelect").children('option[value="' + howeverYouStoredTheValueHere + '"]').prop("disabled", false);
}
);
}
);
然后清理,在我的CSS中,我将禁用的选项设置为隐藏,因为隐藏一个选项在某些浏览器中不起作用,但使用上述方法,这些浏览器的客户端将无法再次选择该选项。
select option[disabled] {
display: none;
}
就我个人而言,在re-addOption元素上,我有一个data-target="value"的自定义属性,并在howeverYouStoredTheValueHere的地方,我使用$(this).attr('data-target')。
删除所有选项
$(".select").empty();
删除所有选项并添加一个空白选项
$(".select").empty().append(new Option('--Select--',''));