我有一个带有键/值对的对象,我想要从选择列表中隐藏/删除这些选项。以下两个选项选择器都不起作用。我遗漏了什么?
$.each(results['hide'], function(name, title) {
$("#edit-field-service-sub-cat-value option[value=title]").hide();
$("#edit-field-service-sub-cat-value option[@value=title]").hide();
});
发布于 2009-08-13 11:55:55
无论如何,第二种形式(带有@
)在jQuery 1.3中不存在。第一种方法不起作用,因为您显然希望使用变量插值。试试这个:
$("#edit-field-service-sub-cat-value option[value=" + title + "]").hide();
请注意,如果title
包含jQuery选择器元字符,这可能会以各种可怕的方式中断。
发布于 2009-08-13 12:11:26
您无法执行此x-browser操作。如果我记得ie有问题的话。最简单的做法是在删除项之前保留select的克隆副本,这使您可以轻松地删除丢失的项,然后将其追加回去。
发布于 2014-01-13 14:29:49
我找到了一个更好的方法,而且很简单:
$("option_you_want_to_hide").wrap('<span/>')
要再次显示,只需找到该选项(而不是span)和$("option_you_want_to_show").unwrap()
。
它在Chrome和火狐上进行了测试。
https://stackoverflow.com/questions/1271503
复制相似问题