选择/选项的jQuery选择器:已选中

时间:2010-04-19 07:29:53

标签: jquery

我应该如何理解

$("select option:selected")

在以下代码中?

(摘自here

$("select").change(function() {
   ...
   $("select option:selected").each(function () {
      ...
   });
   ...
})

文档中的所有选项中是否都选择了

它是否与当前的选择相关,$(this)?

5 个答案:

答案 0 :(得分:14)

是的,它将引用所有选择中的所有选定选项。如果您只想查看当前选择,您可以执行以下操作:

$("select").change(function() {
   ...
   $(this).find("option:selected").each(function () {
      ...
   });
   ...
})

答案 1 :(得分:1)

这是从整个文档中选择的选项。 您可以使用find仅从$(this)

中进行选择

答案 2 :(得分:0)

$("select")会在文档中找到所有选择元素。

并且在变更事件中你可以给出

$(this).find("option:selected")

为当前选择元素选择所有选项。

您的语句将获取文档中所有选定元素的所有选定选项。

答案 3 :(得分:0)

是的,代码是正确的!

  

是否所有选定的选项   在文档中选择?

是的,确实如此。

  

它是否与当前有关   选择,$(这个)?

是的,$(this)与当前元素相关。

以下代码迭代所有选定框的所有选项:

$("select option:selected").each(function () {
   ...
});

因此,您可以这样做:

$("select").change(function() {
   ...
   $(this).find("option:selected").each(function () {
      ...
   });
   ...
})

答案 4 :(得分:0)

$("select option:selected")将选择option具有selected属性集的元素,该元素是select元素的子元素。它将在页面上找到所有选定的选项。它与点击的元素$(this)无关 - 如果您愿意,请使用.find(),如下所示:$(this).find('option:selected')

.each()然后迭代页面上的每个选定选项,对每个元素执行某些操作。