• jq中.prop()与attr()的区别


    一,定义

    prop() 方法设置或返回被选元素的属性和值。prop() 方法应该用于检索属性值

    attr()  方法设置或返回被选元素的属性和值。如需检索 HTML 属性,请使用 attr() 方法代替。

    固有属性用prop方法;

    自定义属性用attr方法。

    典型的例子:判断checkbox是否选中

        $('#all').on('click',function(){
            if($("#all").is(':checked')){
                $(".childbox").each(function () {  
                    $(this).prop({checked:true});                   
                  });          
            }else{
                $(".childbox").each(function () {   
                       $(this).prop({checked:false});
                 }); 
            }    
        })

    如果这里用attr的话,就会出错。

    因为可能会出现$("xxx").attr("checked") == undefind;

    还有典型的例子,可以看这个:

    <html>
    <head>
    <meta charset="utf-8">
    <title>菜鸟教程(runoob.com)</title>
    <script src="http://cdn.static.runoob.com/libs/jquery/1.10.2/jquery.min.js">
    </script>
    <script>
    $(document).ready(function(){
        $("button").click(function(){
            $("#p1").html("attr('checked'): " + $("input").attr('checked')
                          + "<br>prop('checked'): " + $("input").prop('checked'));
        });
    });
    </script>
    </head>
    <body>
    
    <p><b>注意:</b>确认或取消选中该复选框,然后单击按钮刷新内容。</p>
    <button>查看attr() 和 prop() 的值</button>
    <br><br>
    <input id="check1" type="checkbox" checked="checked">
    <label for="check1">Check me</label>
    <p id="p1"></p>
    
    </body>
    </html>

    就个人理解来说,attr是获取标签的属性名,而prop可以获取属性状态。

  • 相关阅读:
    实验吧因缺思汀的绕过注入解析
    python模块中requests参数stream
    土司论坛nc反弹神器使用方法
    msf web脚本反弹shell
    python 多线程
    metasploit后门维持技术
    ew做socks5代理
    双内网渗透代理之reGeorg+Proxifier
    SVN源码泄露漏洞
    Java反射的实例
  • 原文地址:https://www.cnblogs.com/wang715100018066/p/6053761.html
Copyright © 2020-2023  润新知