jQuery从该文件中删除选定选项

zvms9eto  于 2023-03-07  发布在  jQuery
关注(0)|答案(6)|浏览(135)

这里的第一个帖子,我来和平:)我已经搜索,但不能完全找到我想要的。
我正在尝试操作一个选择框的选定选项。有人能解释一下为什么这样做吗:

$('#some_select_box').click(function() {
  $('#some_select_box option:selected').remove();
});

但这不是

$('#some_select_box').click(function() {
  $('this option:selected').remove();
});

我只是想用"this"代替拼写出选择框的id-有人能给我指出正确的语法吗?这让我很生气,因为它看起来应该很简单。我敢肯定它是给别人的,但不是我,因为它是一天的结束,我的大脑被烧坏了...任何指针非常感谢。
干杯

tquggr8v

tquggr8v1#

this不是一个css选择器.你可以避免拼写this的id通过传递它作为一个上下文:

$('option:selected', this).remove();

http://api.jquery.com/jQuery/

yrwegjxp

yrwegjxp2#

$('#some_select_box').click(function() {
     $(this).find('option:selected').remove();
 });

使用find方法。

vc6uscn9

vc6uscn93#

这应该可以达到目的:

$('#some_select_box').click(function() {
  $('option:selected', this ).remove();
});
l7wslrjt

l7wslrjt4#

这个比较简单

$('#some_select_box').find('option:selected').remove().end();
vcirk6k6

vcirk6k65#

$('#一些选择框选项:已选择').remove();

vuktfyat

vuktfyat6#

上面的选项在创建表单中有效,但是最准确的方法是只删除禁用的值,为什么?
想一想,当你想在编辑表单中使用它时,你只需要删除被禁用的选项,否则它将从多选下拉菜单中删除所有被选中的选项。
从下拉列表中删除取消的值

$('#some_select_box').find('option:disabled').remove().end();

将删除如下选项

<select id="some_select_box" multiple>
   <option disabled selected>Choose Option</option>
</select>

相关问题