当前位置:首页 > jquery

jquery属性选择器

2026-02-03 14:05:05jquery

jQuery 属性选择器概述

jQuery 属性选择器允许通过 HTML 元素的属性或属性值进行筛选和操作。这些选择器基于 CSS 属性选择器的语法扩展,支持更灵活的匹配方式。

常用属性选择器语法

  1. [attribute]
    选择所有具有指定属性的元素,无论属性值是什么。
    示例:$("[href]") 选中所有包含 href 属性的元素。

  2. [attribute=value]
    选择属性值完全匹配指定值的元素。
    示例:$("[type='text']") 选中所有 type 属性为 text 的元素。

  3. [attribute!=value]
    选择属性值不等于指定值的元素(jQuery 扩展语法)。
    示例:$("[type!='submit']") 排除 typesubmit 的元素。

  4. [attribute^=value]
    选择属性值以指定字符串开头的元素。
    示例:$("[href^='https']") 选中 hrefhttps 开头的链接。

  5. [attribute$=value]
    选择属性值以指定字符串结尾的元素。
    示例:$("[src$='.png']") 选中 src.png 结尾的图片。

  6. *`[attribute=value] 选择属性值包含指定字符串的元素。 示例:$("[class*='btn']")选中class包含btn` 的元素。

  7. [attribute~=value]
    选择属性值包含指定单词(以空格分隔)的元素。
    示例:$("[class~='active']") 选中 class 包含独立单词 active 的元素。

  8. [attribute|=value]
    选择属性值以指定字符串开头或以该字符串后跟连字符(-)开头的元素。
    示例:$("[lang|='en']") 匹配 langenen-US 的元素。

组合使用示例

属性选择器可以与其他选择器组合,实现更精确的匹配:

// 选中所有包含 title 属性且 class 为 tooltip 的元素
$("[title].tooltip");

// 选中 type 为 checkbox 且 name 以 user 开头的 input 元素
$("input[type='checkbox'][name^='user']");

注意事项

  • 性能优化:属性选择器通常比基本选择器(如 ID 或类选择器)慢,建议尽量缩小搜索范围。例如,优先使用 $("div[class='box']") 而非 $("[class='box']")
  • 动态属性:若属性是通过 JavaScript 动态添加的,需确保在 DOM 完全加载后操作(如使用 $(document).ready())。
  • 转义特殊字符:若属性值包含 [ ] , " ' 等字符,需用双反斜杠转义。例如:$("[name='foo\\[bar\\]']")

实际应用场景

  1. 表单操作
    快速定位特定类型的表单元素:

    // 禁用所有必填字段
    $("[required]").prop("disabled", true);
  2. 动态样式控制
    根据属性值修改样式:

    // 为外部链接添加图标
    $("a[href^='http']:not([href*='mysite.com'])").addClass("external-link");
  3. 数据属性处理
    利用 data-* 属性存储信息并选择:

    // 选中所有包含 data-user-id 属性的元素
    $("[data-user-id]").on("click", function() {
        const userId = $(this).data("userId");
        console.log(userId);
    });

通过灵活组合属性选择器,可以高效地实现复杂的 DOM 查询和操作。

jquery属性选择器

标签: 属性选择器
分享给朋友:

相关文章

vue  实现关联属性

vue 实现关联属性

Vue 实现关联属性 在 Vue 中实现关联属性通常涉及计算属性(computed properties)或侦听器(watchers),用于根据其他属性的变化动态更新目标属性。 使用计算属性 计算…

vue实现页面属性修改

vue实现页面属性修改

Vue 实现页面属性修改的方法 Vue 提供了多种方式来动态修改页面属性,包括数据绑定、计算属性、侦听器等。以下是几种常见的方法: 数据绑定 通过 v-bind 指令或简写 : 实现动态绑定 HT…

jquery属性

jquery属性

jQuery 属性操作 jQuery 提供了多种方法来操作 HTML 元素的属性。这些方法可以用于获取、设置、修改或删除元素的属性。 获取属性值 使用 attr() 方法可以获取指定属性的值。例如…

vue计算属性 实现

vue计算属性 实现

计算属性的基本概念 计算属性是Vue中用于处理复杂逻辑的响应式属性,基于依赖的响应式数据自动缓存结果。当依赖数据变化时,计算属性会重新计算,否则直接返回缓存值。 基本语法实现 在Vue组件选项中通…

jquery添加属性

jquery添加属性

使用 attr() 方法添加属性 attr() 是 jQuery 中用于获取或设置属性值的方法。通过传递属性名和值,可以为元素添加或修改属性。 // 为元素添加单个属性 $("#elemen…

vue计算属性实现

vue计算属性实现

计算属性的基本概念 计算属性是Vue.js中一种特殊的属性,用于声明式地定义依赖其他数据的派生值。计算属性基于它们的依赖进行缓存,只在相关依赖发生改变时才会重新计算。 计算属性的基本语法 在Vue组…