【问题标题】:How can I select only checked inputs that are visible? [duplicate]如何仅选择可见的选中输入? [复制]
【发布时间】:2019-04-29 13:30:10
【问题描述】:

我有多个对象,如下所示

<input type="checkbox" class="to-labelauty-icon labelauty" 
  name="inputLableautyNoLabeledCheckbox" data-plugin="labelauty" 
  data-label="false" id="labelauty-0001" value="tc_Login">

我正在使用下面的代码来获取所有被检查的对象,这给了我所有被检查的元素,无论它们的可见/隐藏状态如何。

$('input[class="to-labelauty-icon labelauty"]:checked')

我怎样才能只获取可见和选中的元素?

【问题讨论】:

  • 这里有什么理由使用属性选择器吗?
  • @isherwood 从理论上讲,它只会在 HTML 中按照这两个类的顺序匹配那些输入。为什么这会有所帮助,我无法理解。

标签: javascript jquery html


【解决方案1】:

您可以使用:visible selector,也可以使用dot 选择器表示法组合类

$('input.to-labelauty-icon.labelauty:visible:checked')

【讨论】:

  • 这在 chrome 控制台中给了我jQuery.fn.init [prevObject: jQuery.fn.init(1)] length: 0 prevObject: jQuery.fn.init [document] __proto__: Object(0),我没有使用这个得到检查和可见的元素
  • 那是jquery对象的日志。你需要对那个对象做点什么。提供minimal reproducible example 并说明您要完成的工作
  • $('input[class="to-labelauty-icon labelauty"]:checked:hidden') 如果我使用它,那么我会得到所有元素,甚至包括可见元素。为什么可见选择器对此不起作用
  • 再次...提供一个完整的示例...如 jsfiddle、codepen、plunker 等
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-09-18
相关资源
最近更新 更多