• js+jquery动态设置/添加/删除/获取元素属性的两种方法集锦对照(动态onclick属性设置+动态title设置)


    <!DOCTYPE HTML PUBLIC  "-//W3C//DTD HTML 4.0//EN"   
    "http://www.w3.org/TR/REC-html140/strict.dtd">  
    <html>  
    <head>  
        <meta http-equiv="content-type" content="text/html; charset=utf-8"/>  
        <title>Sample Page!</title>  
        <script type="text/javascript" src="jquery-1.9.1.min.js"></script>
        <script language="JavaScript" type="text/javascript"><!--  
       
    function TestEvent(){   
      document.MyForm.text1.removeAttribute("disabled"); //移除文本框disable属性.  
      document.MyForm.text1.value="enable";//改变文本框中的文字.  
    }  
    //给ID为key的a标签 加入 title属性并赋值为"測试title" 摘取天上星:http://blog.csdn.net/zqtsx
    function AddTitle(){
        document.getElementById('key').setAttribute("title","測试title"); 
    }
    //给ID为key的a标签 删除 title属性
    function DelTitle(){
        document.getElementById('key').removeAttribute("title");
    }
    //js获取title属性的值
    function GetTitle(){
        var value=document.getElementById('key').getAttribute("title");
        alert('title的属性值为:'+value);
    }
    //jq方式删除、设置元素属性,为了更加形象些对照,这里採用嵌入式方式,没有进行js html分离 摘取天上星:http://blog.csdn.net/zqtsx
    function a(){
        alert('測试jq加入onclick属性');
    }
    //jq方式加入onclick属性
    function jqAddOnclick(){
        $("#key").attr("onclick","a();");
    }
    //jq方式取得onclick属性值
    function jqGetOnclick(){
        var value=$("#key").attr("onclick");
        alert('onclick属性值为:'+value);
    }
    //jq方式删除onclick属性
    function jqDelOnclick(){
        $("#key").removeAttr("onclick");
    }
    
    // --></script>  
    </head>  
    <body>  
        <a id="key" href="#123">add title</a>
        <form name="MyForm" action="">  
        <input type="text" name="text1" value="disabled" disabled="disabled"/>  
        <input type="button" name="MyButton" value="js移除文本框disabled属性" onclick="TestEvent()"/>  
        <input type="button" name="addTitle" onclick="AddTitle();" value="js加入title属性">
        <input type="button" name="getTitle" onclick="GetTitle();" value="js获取title属性">
        <input type="button" name="delTitle" onclick="DelTitle();" value="js删除title属性">
        <input type="button" name="jqadd" onclick="jqAddOnclick();" value="jq加入onclick属性">
        <input type="button" name="jqget" onclick="jqGetOnclick();" value="jq获取onclick属性">
        <input type="button" name="jqdel" onclick="jqDelOnclick();" value="jq删除onclick属性">
        </form>  
    </body>  
    </html>  

    关于jQuery1.9.1针对checkbox属性设置的一些调整差异(摘取天上星:http://blog.csdn.net/zqtsx):

    在jquery 1.8.x中的版本号,我们对于checkbox的选中与不选中操作例如以下:

    推断是否选中

    $('#checkbox').prop('checked')

    设置选中与不选中状态:

    $('#checkbox').attr('checked',true)

    $('#checkbox').attr('checked',false)

    但此方法在jquery1.9.1中,有些处理不一样

    IE10,Chrome,FF中。对于选中状态,第一次$('#checkbox').attr('checked',true)能够实现

    可是当通过代码清除选中,下次再通过代码 $('#checkbox').attr('checked',true) 去选中时

    尽管代码中有checked='checked',可是画面表现都没有打勾。

    IE8,IE6下无此问题。

    后来调查了相关的资料,发现如今attr('checked',true)都换成prop('checked',true)

    以下给出个JQ1.8.x以后 的全选反选的JQ样例

    JS代码部分例如以下

    [javascript] view plaincopy在CODE上查看代码片派生到我的代码片
    1. $(function(){  
    2.   $("#select_yes").click(function(){  
    3.     $("input[name=id]").each(function(){  
    4.       $(this).prop("checked",true);  
    5.     });  
    6.   });  
    7.   $("#select_no").click(function(){  
    8.     $("input[name=id]").each(function(){  
    9.       $(this).prop("checked",false);  
    10.     });  
    11.   });  
    12. });  

    HTML代码部分例如以下()

    1. <input type="checkbox" value="1" name="id"><br/>    
    2. <input type="checkbox" value="2" name="id"><br/>    
    3. <input type="checkbox" value="3" name="id"> <br/>    
    4. <input type="checkbox" value="4" name="id"> <br/>    
    5. <input type="checkbox" value="5" name="id"> <br/>    
    6. <input type="checkbox" value="6" name="id"> <br/>    
    7. <input type="checkbox" value="7" name="id"> <br/>    
    1. <a href="javascript:void(0);" id="select_yes">全选</a>   
    2. <a href="javascript:void(0);" id="select_no">返选</a>   

  • 相关阅读:
    5.基于文件验证的vsftp虚拟用户
    linux系统用户登录ftp
    4.ftp用户禁锢
    原码,反码,补码
    8map
    命令jhsdb jmap heap pid 1 报错
    20211112_mysql_8.0docker部署踩坑
    Windows 下 tail 查看日志命令工具分享
    前后端java+vue 实现rsa 加解密与摘要签名算法
    优化TTFB 至500ms内
  • 原文地址:https://www.cnblogs.com/cxchanpin/p/6910483.html
Copyright © 2020-2023  润新知