首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >关于子计数的Jquery选择器

关于子计数的Jquery选择器
EN

Stack Overflow用户
提问于 2013-11-07 04:28:55
回答 3查看 767关注 0票数 1

计数选择选项是简单

代码语言:javascript
运行
复制
$('.myselect option').length;

但是有没有一个速记选择器来过滤大小呢?做这样的事?

代码语言:javascript
运行
复制
$('.myselect').childCountBetween('option', 2, 4).hide();

ie在所有的.myselect上运行一个jquery方法(隐藏在这个实例中),其中包含2到4个选项。

编辑:为了澄清-我希望作为选择器,过滤“父”元素的基础上的子计数。Ie不想隐藏选项2-4,而是隐藏包含2到4个项的字段。类似的任务是在ULs中添加一个类,其中包含2-4Lis等。如果原来的问题含糊不清,很抱歉。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-11-07 04:43:44

不确定这是你想要的解决方案,但你所描述的应该有效.

代码语言:javascript
运行
复制
$.fn.childCountBetween = function (child, min, max) {
  return $(this).filter(function (id, el) {
     var children = $(el).find(child).length;
     return children > min && children < max;
  });
};

$('.myselect').childCountBetween('option', 2, 4).hide();
票数 3
EN

Stack Overflow用户

发布于 2013-11-07 04:34:57

试着使用切片()

代码语言:javascript
运行
复制
$('.myselect option').slice( 2, 4 ).hide();

注意事项IE不允许您操作option elements directly。为此,您必须从select和remove alloption elements进行repopulate

票数 0
EN

Stack Overflow用户

发布于 2013-11-07 04:35:43

您还可以使用jQuerys eq()函数来查找特定的索引。

http://api.jquery.com/eq/

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19828031

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档