js:自定義屬性(獲取、設置、移除)


1、獲取屬性的值的方法

(1)element.屬性

    <body>
        <input id="input1" value="未失去焦點"></input>
        <script>
  
                input1.onblur=function(){
                    document.getElementById("input1").value="失去焦點";
                }        
        </script>
    </body>

 

 

 

該種方式只能夠獲取到標簽已經存在的屬性

(2) getElementById

獲取標簽存在的屬性的值:

<input id="input1" value="未失去焦點"></input>
        <script>
                input1.onblur=function(){
                    console.log(document.getElementById("input1").getAttribute("value"));
                }        
        </script>

 

獲取自定義屬性:

    <body>
        <input id="input1" value="未失去焦點" index="123"></input>
        <script>
                input1.onblur=function(){
                    console.log(document.getElementById("input1").getAttribute("index"));
                }        
        </script>
    </body>

getElementById不僅能夠獲取到元素自身的屬性還能夠獲取自定義的屬性

(3)H5新增的獲取自定義屬性的方法(ie10以上)

    <body>
        <input id="input1" value="未失去焦點" data-index = "123" data-time="2020年7月25日08:27:20"></input>
        <script>
                input1.onblur=function(){
                    console.log(document.getElementById("input1").dataset);
                    console.log(document.getElementById("input1").dataset.index);
                }        
        </script>
    </body>

 

 dataset是一個集合里面存儲的是所有以data開頭的自定義屬性

<input id="input1" value="未失去焦點" data-index = "123" data-time-now="2020年7月25日08:27:20"></input>
        <script>
                input1.onblur=function(){
                    console.log(document.getElementById("input1").dataset.timeNow);
                }        
        </script>

屬性名有多個-相連接的時候,獲取值的時候要使用駝峰命名法

 

2、設置屬性值

(1)設置內置屬性

    <body>
        <input id="input1" value="未失去焦點" index="123"></input>
        <script>
                input1.onblur=function(){
                    document.getElementById("input1").value="早上好";
                }        
        </script>
    </body>

失去焦點時觸發函數,屬性的值發生變化:

 

 (2)設置自定義屬性的值

    <body>
        <input id="input1" value="未失去焦點" index="123"></input>
        <script>
                input1.onblur=function(){
                    document.getElementById("input1").setAttribute("index","早上好");
                    console.log(document.getElementById("input1").getAttribute("index"));
                }        
        </script>
    </body>

 

3、移除自定義屬性

<body>
        <input id="input1" value="未失去焦點" index="123"></input>
        <script>
                input1.onblur=function(){
                    document.getElementById("input1").removeAttribute("index");
                }        
        </script>
    </body>

 

 

 

總結:

為了區分自定義屬性和本身的屬性,如在書寫自定義屬性index的時候可以寫作:data-index

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM