需要 JQuery 选择器的帮助,该选择器返回所有选中的复选框,这些复选框是具有指定类的节点的子节点

Posted

技术标签:

【中文标题】需要 JQuery 选择器的帮助,该选择器返回所有选中的复选框,这些复选框是具有指定类的节点的子节点【英文标题】:Need help with a JQuery Selector that returns all checked checkboxes that are children of a node with a specified class 【发布时间】:2010-12-13 05:31:21 【问题描述】:

很烦人的是,设置 ASP.NET 复选框控件的 cssClass 属性会像这样呈现 html,而不是仅仅将 class 属性添加到输入标记:

<span class="myclass">
    <input id="chkBox1" type="checkbox" name="chkBox1" />
 </span>

因此,我在这里尝试编写一个 Jquery 过滤器,该过滤器查找嵌套在 span 标记内的所有选中复选框,并指定了“myclass”类。

这是我目前所拥有的,但它似乎不起作用。

$(".myclass input[type='checkbox']:checked")

有人看到我做错了什么吗?

我也接受一个解决方案,告诉我如何制作复选框控件,只需将 dang 类属性放在输入控件上,而不是在其周围包裹一个跨度。

【问题讨论】:

【参考方案1】:

这应该可行:

$("span.myclass :checkbox")

您还需要检查它们吗?然后像这样:

$("span.myclass :checkbox:checked")

【讨论】:

成功了。谢谢!不过,我只是这样理解。我认为在选择器中添加空格基本上等同于空格两侧属性的 OR。我弄错了吗? 空格表示嵌套。请参阅文档:docs.jquery.com/Selectors/descendant#ancestordescendant【参考方案2】:

我实际上不认为你需要输入类型,因为只有一个复选框可以为 :checked 所以你可以写 $(".myclass").find("input:checked") 应该没问题

【讨论】:

单选按钮也可以勾选。 一个同样好的答案,但我接受了另一个,因为选择器样式在我的特定情况下比 .find 语法更有效。绝对值得点赞 (+1)。

以上是关于需要 JQuery 选择器的帮助,该选择器返回所有选中的复选框,这些复选框是具有指定类的节点的子节点的主要内容,如果未能解决你的问题,请参考以下文章

[ jquery 过滤器 children() ] 此方法用于在选择器的基础之上返回被选元素的所有直接子元素

从jQuery属性选择器的结果中删除由jQuery属性选择器定义的类

jQuery选择器的总结

JQuery 返回具有空属性选择器的非空输入

深入学习jQuery选择器系列第四篇——过滤选择器之属性选择器

jQuery 选择器和JavaScript 选择器的技巧与异常原因