就全選,不全選問題,attr與prop的區別

2021-07-11 12:36:01 字數 1217 閱讀 3170

在高版本的jquery引入prop方法後,什麼時候該用prop?什麼時候用attr?它們兩個之間有什麼區別?這些問題就出現了。

關於它們兩個的區別,網上的答案很多。這裡談談我的心得,我的心得很簡單:

上面的描述也許有點模糊,舉幾個例子就知道了。 

<

a href

=""target

="_self"

class

="btn"

a>

這個例子裡元素的dom屬性有「href、target和class",這些屬性就是元素本身就帶有的屬性,也是w3c標準裡就包含有這幾個屬性,或者說在ide裡能夠智慧型提示出的屬性,這些就叫做固有屬性。處理這些屬性時,建議使用prop方法。

<

a href

="#"

id="link1"

action

="delete"

>刪除

a>

這個例子裡元素的dom屬性有「href、id和action」,很明顯,前兩個是固有屬性,而後面乙個「action」屬性是我們自己自定義上去的,元素本身是沒有這個屬性的。這種就是自定義的dom屬性。處理這些屬性時,建議使用attr方法。使用prop方法取值和設定屬性值時,都會返回undefined值。

<

input

id="chk1"

type

="checkbox"

/>是否可見

<

input

id="chk2"

type

="checkbox"

checked

="checked"

/>是否可見

像checkbox,radio和select這樣的元素,選中屬性對應「checked」和「selected」,這些也屬於固有屬性,因此需要使用prop方法去操作才能獲得正確的結果。

$("#chk1").prop("checked") == false

$("#chk2").prop("checked") == true

如果上面使用attr方法,則會出現:

$("#chk1").attr("checked") ==undefined

$("#chk2").attr("checked") == "checked"

全選,全不選,反選:12

34

使用vue製作全選和不全選

這裡主要介紹的是使用vue雙向資料的乙個指令v module type checkbox v model all 全選 type checkbox value html v model msg html type checkbox value css v model msg css type che...

checkbox 一鍵全選與取消全選

使用jquery實現的乙個checkbox一鍵全選小demo,能夠一鍵全選,也能夠一鍵取消全選 都選中的情況下才能一鍵取消全選 如果全選狀態下某個checkbox取消勾選,一鍵全選checkbox也會被取消。個人感覺這個小demo通用性很好。先附上我的小demo 為了方便測試檢視效果,我直接將整個h...

核取方塊CheckBox的全選與取消全選功能

在前端開發,尤其是table的開發中,經常會在列表左上角有乙個全選按鈕,今天就來分享乙個全選按鈕的邏輯實現 type checkbox id selall th 序號th thead type checkbox name check td 1td tr type checkbox name chec...