当前位置: 首页 > news >正文

jQuery过滤器用法一篇详解

jQuery过滤器用于进一步筛选已选中的元素集合,基于元素的位置、内容、状态或其他条件进行精确定位。过滤器分为基本过滤器内容过滤器可见性过滤器属性过滤器子元素过滤器表单过滤器等。本文详细介绍常见过滤器的分类及用法等等。

本文目录

        • 1. 基本过滤器
        • 2. 内容过滤器
        • 3. 可见性过滤器
        • 4. 属性过滤器
        • 5. 子元素过滤器
        • 6. 表单过滤器
        • 7. 自定义过滤器
        • 8. 排除过滤器
1. 基本过滤器

基于元素在集合中的位置或索引进行筛选

// 选取第一个和最后一个元素$("li:first").addClass("first");$("li:last").addClass("last");// 选取偶数行和奇数行(索引从0开始)$("tr:even").css("background","#f0f0f0");$("tr:odd").css("background","#ffffff");// 选取指定索引位置的元素(索引从0开始)$("li:eq(2)").text("Third item");// 选取第3个li$("li:gt(2)").hide();// 选取索引大于2的li$("li:lt(2)").show();// 选取索引小于2的li// 选取当前正在执行事件的元素$("button").click(function(){$(this).addClass("active");});
2. 内容过滤器

基于元素的文本内容或子元素进行筛选

// 选取包含指定文本的元素$("div:contains('Hello')").css("color","red");// 选取为空的元素(没有子元素或文本)$("p:empty").remove();// 选取含有子元素或文本的元素$("div:has(p)").addClass("has-child");// 选取文本内容严格等于指定值的元素$("td:contains('Apple'):not(:has(*))").highlight();
3. 可见性过滤器

基于元素的可见性状态进行筛选

// 选取隐藏的元素并显示它们$("div:hidden").show();// 选取可见的元素并隐藏它们$("div:visible").hide();// 结合动画使用$("button").click(function(){$("p:visible").fadeOut();});
4. 属性过滤器

基于元素的属性或属性值进行筛选

// 选取具有指定属性的元素$("input[disabled]").prop("disabled",false);// 属性选择器写法$("input").filter("[disabled]").prop("disabled",false);// 过滤器写法// 选取属性值等于指定值的元素$("a[href='https://jq.com']").addClass("external");// 其他属性操作符:!=、^=、$=、*=$("img[src$='.png']").fadeIn();// 选取src以.png结尾的图片
5. 子元素过滤器

基于元素在父元素中的位置进行筛选

// 选取每个父元素的第一个子元素$("ul > li:first-child").css("font-weight","bold");// 选取每个父元素的最后一个子元素$("ul > li:last-child").css("font-style","italic");// 选取每个父元素的第n个子元素(从1开始)$("ul > li:nth-child(3)").addClass("highlight");// 选取每个父元素的奇数/偶数子元素$("ul > li:nth-child(odd)").css("background","#f0f0f0");// 选取每个父元素中唯一的子元素$("div > p:only-child").text("Only child");
6. 表单过滤器

专门用于筛选表单元素

// 选取所有表单输入元素$(":input").addClass("form-control");// 选取文本框、密码框、单选框、复选框等$(":text").val("Default text");$(":password").attr("placeholder","Password");$(":radio:checked").val();// 获取选中的单选框值$(":checkbox:checked").length;// 统计选中的复选框数量// 选取可用/禁用的元素$(":enabled").prop("disabled",true);$(":disabled").prop("disabled",false);// 选取已选中/未选中的选项$("select option:selected").text();$("input:selected").val();// 针对单选框和复选框
7. 自定义过滤器

使用.filter()方法创建自定义筛选条件

// 筛选出宽度大于200px的元素$("div").filter(function(){return$(this).width()>200;}).addClass("wide");// 结合多个条件筛选$("li").filter(":even, :contains('jq')").highlight();
8. 排除过滤器

使用.not()方法排除不符合条件的元素

// 选取所有li,但排除第一个和最后一个$("li").not(":first, :last").addClass("middle");// 排除具有特定类的元素$("p").not(".ignore").hide();



← 上一篇 AngularJS知识快速入门(上)
记得点赞、关注、收藏哦!
下一篇 Ajax——在OA系统提升性能的局部刷新 →
http://www.jsqmd.com/news/1302069/

相关文章:

  • 2026年最新钢板网/基坑护栏/市政护栏生产厂家综合实力解析 - 雷隆丝网可圈可点 - 比奇堡111
  • OpenWork扩展开发工具链详解:提升开发效率的必备资源
  • 如何快速搭建跨平台TUIO模拟器:开发者的完整指南
  • 智慧楼宇多时间尺度能源调度系统设计与实现
  • 书生大模型提示词设计:L1级结构化实践指南
  • 2026年长春本地厨房设备厂家推荐 解决选型合规与售后痛点 - 甄选测评馆
  • 【通信AI商业化生死线】:为什么87%的POC项目止步于实验室?6个被忽视的交付临界点
  • 3小时从零到精通:Reloaded-II游戏模组加载器终极指南
  • 自己动手写一个spring之aop_2
  • FPGA中UART串口模块
  • 目前口碑出众的机器人视觉识别系统都有哪几款值得我们参考选择 - 甄选测评馆
  • 转大模型后,我为什么把权限和日志写得比 Prompt 还仔细
  • Anthropic 承认 Claude 在隔离测试中黑入三家组织:和 OpenAI 接连翻车,AI 安全测试的威胁模型正在失效
  • 阜阳专科毕业升本科,如何比较机构的服务完整度 - 精彩城市
  • 重庆钻石回收迈入“全域直通时代”!行情一站透明无差价,7家合规门店开通钻石鉴定回收专线 - 二奢分享官
  • 闲置克罗心首饰别放着贬值!专业渠道盘活潮流珠宝,告别估价悬殊烦恼 - 全国二奢机构参考
  • 免费获取百度文库文档:终极指南与完整教程
  • Stability AI生成式模型:从2D到4D的视觉革命
  • 技术债务的偿还策略:如何说服业务方投资数据库架构升级
  • 2026年国内酒店用品厂家排行 适配不同酒店采购需求 - 甄选测评馆
  • 技术探秘:Windows 10上实现Android应用生态桥接的完整指南
  • 美丽蓝天大气治理补贴申报技术要点与落地解决方案 —— 越华环保一体化申报服务体系
  • 2026年武汉地区上上电缆代理厂家排行 适配多场景采购需求 - 甄选测评馆
  • 从MOD到MP3:OpenMPT音频导出全流程教程
  • 1688找工厂名片AI大改版:从7星到10星,商家该如何应对
  • 2026年绵阳装修公司挑选攻略:铭典装饰等优质企业实测梳理 - 比奇堡111
  • 2026深圳名包回收优选名录:7家正规机构实测对 - 全国二奢机构参考
  • 长沙买猫避坑指南!实测多家黑店,认准这家正规连锁猫舍 - 资讯报道
  • 本地大模型部署与API调用实战:LM Studio指南
  • 太仓淋浴房哪家性价比高?之江国际实体门店|欧卫特淋浴房靠谱优选 - 甄选测评馆