jQuery属性 之 arr()/prop()获取,设置属性值(二)

一.attr()、 removeAttr()

  1. 类似于js中的attribute
  2. js中
  • ele.setAttribute();设置属性
    div.setAttribute('class','demo');
    --><div class = "demo">...</div>
  • ele.getAttribute();获取行间属性值
    <div id = "only"> ...</div>
    div.getAttribute('id');
    --->"only"
  1. removeAttr()可以删掉固有属性
<input type="text"  id="name" sth="sth">
    <script src="../jquery-3.3.1.js"></script>
    <script type="text/javascript">
        $('input').removeAttr('id');
        console.log($('input').attr('id'));

二.prop()、 removeProp()

  1. 类似js中的property
  2. removeProp()可以自定义的属性(prop()可以设置自定义属性,只是无法添加到html中去),无法删掉固有属性

三.attr()与prop()的区别

<input type="text"  id="name" sth="sth">
<div>div</div>
<p>pp</p>
    <script src="../jquery-3.3.1.js"></script>
    <script type="text/javascript">
        
        console.log($('input').attr('sth'));
        //正常打印sth属性值
        console.log($('input').prop('sth'));
        //输出undefined
        console.log($('input').attr('id'));
        //正常输出name
        console.log($('input').prop('id'));
        //正常输出name

        $('div').attr('lecturer','Arya');
        //正常添加属性
        $('p').prop('lecturer','Arya');
        //无法添加属性
  1. 属性分为两种:
    1、固有属性(特性):html元素上本身就有的属性,eg:class,id,src,href,value,alt,type,title
    2、新增属性:自定义的属性
  2. attr()可以获取、设置所有属性;prop()只可以获取、设置固有属性(特性);
  3. attr()中可以填写对象,使得选中的dom元素遍历加入对象中的所有属性
$('div').attr({
      id:'test',
      lecturer:'Arya'
});
  1. attr与prop,取值取第一个,赋值一组
  2. attr获取未设置的属性,返回undefined;prop获取未设置的特性,返回空;
  3. prop在多选中,可以通过checked固有属性来判断是否选中(true/false)
    eg:多选题,全选选项如何实现
选中时checked属性值为true,未选中时为false

小奶狗为全选选项
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容