一起了解jQuery的属性操作

    技术2026-08-31  4

    话常说,马无夜草不肥,程序员JQuery不学不香,虽然在技术革新速率很高的今天,JQuery已经不是必需品,但多了解总要比不了解好,话不多说,让我们直接来看看属性及其介绍。

    目标

    能够操作 jQuery 属性

    jQuery 常用属性操作有三种:prop() / attr() / data() ;

    元素固有属性值 prop()(★★★)

    所谓元素固有属性就是元素本身自带的属性,比如 元素里面的 href ,比如 元素里面的 type

    语法

    注意:prop() 除了普通属性操作,更适合操作表单属性:disabled / checked / selected 等。

    元素自定义属性值 attr()(★★★)

    用户自己给元素添加的属性,我们称为自定义属性。 比如给 div 添加 index =“1”。

    语法

    注意:attr() 除了普通属性操作,更适合操作自定义属性。(该方法也可以获取 H5 自定义属性)

    示例代码

    <body> <a href="http://www.itcast.cn" title="都挺好">都挺好</a> <input type="checkbox" name="" id="" checked> <div index="1" data-index="2">我是div</div> <span>123</span> <script> $(function() { //1. element.prop("属性名") 获取元素固有的属性值 console.log($("a").prop("href")); $("a").prop("title", "我们都挺好"); $("input").change(function() { console.log($(this).prop("checked")); }); // console.log($("div").prop("index")); // 2. 元素的自定义属性 我们通过 attr() console.log($("div").attr("index")); $("div").attr("index", 4); console.log($("div").attr("data-index")); // 3. 数据缓存 data() 这个里面的数据是存放在元素的内存里面 $("span").data("uname", "andy"); console.log($("span").data("uname")); // 这个方法获取data-index h5自定义属性 第一个 不用写data- 而且返回的是数字型 console.log($("div").data("index")); }) </script> </body>

    案例:购物车案例模块-全选

    全选思路:

    里面3个小的复选框按钮(j-checkbox)选中状态(checked)跟着全选按钮(checkall)走。

    因为checked 是复选框的固有属性,此时我们需要利用prop()方法获取和设置该属性。

    把全选按钮状态赋值给3小复选框就可以了。

    当我们每次点击小的复选框按钮,就来判断:

    如果小复选框被选中的个数等于3 就应该把全选按钮选上,否则全选按钮不选。

    :checked 选择器 :checked 查找被选中的表单元素。

    $(function() { // 1. 全选 全不选功能模块 // 就是把全选按钮(checkall)的状态赋值给 三个小的按钮(j-checkbox)就可以了 // 事件可以使用change KaTeX parse error: Expected '}', got 'EOF' at end of input: …// console.log((this).prop(“checked”)); $(".j-checkbox, .checkall").prop(“checked”, ( t h i s ) . p r o p ( " c h e c k e d " ) ) ; i f ( (this).prop("checked")); if ( (this).prop("checked"));if((this).prop(“checked”)) { // 让所有的商品添加 check-cart-item 类名 $(".cart-item").addClass(“check-cart-item”); } else { // check-cart-item 移除 $(".cart-item").removeClass(“check-cart-item”); } }); // 2. 如果小复选框被选中的个数等于3 就应该把全选按钮选上,否则全选按钮不选。 KaTeX parse error: Expected '}', got 'EOF' at end of input: …// console.log((".j-checkbox:checked").length); // ( " . j − c h e c k b o x " ) . l e n g t h 这 个 是 所 有 的 小 复 选 框 的 个 数 i f ( (".j-checkbox").length 这个是所有的小复选框的个数 if ( (".jcheckbox").lengthif((".j-checkbox:checked").length === $(".j-checkbox").length) { $(".checkall").prop(“checked”, true); } else { KaTeX parse error: Expected 'EOF', got '}' at position 49: …se); }̲ if ((this).prop(“checked”)) { // 让当前的商品添加 check-cart-item 类名 $(this).parents(".cart-item").addClass(“check-cart-item”); } else { // check-cart-item 移除 $(this).parents(".cart-item").removeClass(“check-cart-item”); } });

    })

    jQuery 文本属性值

    目标

    会使用操作文本属性值的方法

    jQuery的文本属性值常见操作有三种:html() / text() / val() ; 分别对应JS中的 innerHTML 、innerText 和 value 属性。

    jQuery内容文本值(★★★)

    常见操作有三种:html() / text() / val() ; 分别对应JS中的 innerHTML 、innerText 和 value 属性,主要针对元素的内容还有表单的值操作

    语法

    注意:html() 可识别标签,text() 不识别标签。

    示例代码

    <body> <div> <span>我是内容</span> </div> <input type="text" value="请输入内容"> <script> // 1. 获取设置元素内容 html() console.log($("div").html()); // $("div").html("123"); // 2. 获取设置元素文本内容 text() console.log($("div").text()); $("div").text("123"); // 3. 获取设置表单值 val() console.log($("input").val()); $("input").val("123"); </script> </body>
    Processed: 0.009, SQL: 9