摘要:最近在項目中使用到設(shè)置,使用場景是頁面上有三類單選框,一個是全選所有頁數(shù)據(jù)一個是選擇當(dāng)前頁,一個是選擇一條,也算常用的場景。的屬性在頁面首次加載時就確定。最后,總結(jié)下獲取和設(shè)置屬性的方法。
最近在項目中使用到j(luò)Query設(shè)置checkbox,使用場景是頁面上有三類單選框,一個是全選所有頁數(shù)據(jù)(id="cb1"),一個是選擇當(dāng)前頁(id="cb2"),一個是選擇一條(name="cb3"),也算常用的場景。
一開始全選框的點(diǎn)擊事件這樣寫:
$("#cb1",this).click(function(){ var allChecked = this.checked; $("#cb2").attr("checked",allChecked); //當(dāng)前頁 $("input[name="cb3"]").each( function(){ this.checked = allChecked; }) });
結(jié)果是點(diǎn)擊cb1以后,cb3的每條和cb2都能選中,cb1取消后其他也都能取消,但經(jīng)過上面一個回合以后,cb3正常,cb2卻再也選不中,沒有反應(yīng),當(dāng)時為此抓狂了很久。一開始以為是jQuery的版本問題,所以查看了引入的版本,發(fā)現(xiàn)并不是原因。
原來在jquery里,有兩種操作元素屬性的方法,一種是attr(),另一種是prop()。
attr()的屬性在頁面首次加載時就確定。當(dāng)頁面初始狀態(tài)checkbox沒有選中,$("#cb1").attr("checked")為undefined,點(diǎn)擊選中后,還是undefined,不管選中與否$("#cb1").attr("checked")始終都是undefined;當(dāng)頁面初試狀態(tài)checkbox選中,$("#cb1").attr("checked")為checked,之后取消選中還是checked。
prop()方法隨checked屬性改變而改變,選中時為true,為選中時為false。
最后,總結(jié)下獲取和設(shè)置checked屬性的方法。
得到選中屬性$("#id").prop("checked")
$("#id").get(0).checked)
document.getElementById("#id").checked
$("#id").is(":checked")
設(shè)置選中$("#id").prop("checked",true)
$("#id").get(0).checked = true
document.getElementById("#id").checked = true
不足之處歡迎大家補(bǔ)充指正。
參考:
http://blog.csdn.net/hjb27224...
http://www.jb51.net/article/5...
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/50692.html
摘要:當(dāng)勾選全選按鈕旁邊的復(fù)選框時,列表中的選項全部選中,反之取消勾選則列表中的選項全部為未選中狀態(tài)。全選或全不選全選全不選反選設(shè)置全選復(fù)選框獲取選中選項的值選項總個數(shù)全選不全選HTML 我們的頁面上有一個歌曲列表,列出多行歌曲名稱,并匹配復(fù)選框供用戶選擇,并且在列表下方有一排操作按鈕。 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 1.時間都去哪兒了 ...
摘要:屬性和特性我們知道的實(shí)現(xiàn)就是把一個文檔映射為一棵樹,而樹上的每個節(jié)點(diǎn)其實(shí)就是一個對象。 從jQuery的prop()和attr()方法說開去 jQuery中有兩個獲取DOM元素屬性的方法:prop()和attr(),看似可以互相替換,但若搞不清這兩個方法獲取的到底是什么屬性,有時就會出現(xiàn)令人困惑的結(jié)果。官方文檔中,用了下面的例子來解釋這兩者的不同: 操作 結(jié)果 elem.c...
摘要:屬性和特性我們知道的實(shí)現(xiàn)就是把一個文檔映射為一棵樹,而樹上的每個節(jié)點(diǎn)其實(shí)就是一個對象。 從jQuery的prop()和attr()方法說開去 jQuery中有兩個獲取DOM元素屬性的方法:prop()和attr(),看似可以互相替換,但若搞不清這兩個方法獲取的到底是什么屬性,有時就會出現(xiàn)令人困惑的結(jié)果。官方文檔中,用了下面的例子來解釋這兩者的不同: 操作 結(jié)果 elem.c...
摘要:在調(diào)試使用操作的選中狀態(tài)切換的時候,發(fā)現(xiàn)了個復(fù)選框在被選中再取消選中一次后,無法再次通過重新選中了。如果發(fā)現(xiàn)不對,歡迎指正。但是使用直接操作每一個的屬性來設(shè)置,是可以正常的。 在調(diào)試使用jQuery操作checkbox的選中狀態(tài)切換的時候,發(fā)現(xiàn)了個bug:checkbox復(fù)選框在被選中再取消選中一次后,無法再次通過jQuery重新選中了。 如果發(fā)現(xiàn)不對,歡迎指正。如果知道怎么解決這個問...
摘要:獲取匹配的第一個元素相對于其最近的具有定位即不是的父元素的位置返回不能設(shè)置。但是這兩種方法的缺點(diǎn)是要綁定的元素必須存在文檔中。支持對動態(tài)創(chuàng)建的元素有效。解綁所有代理的事件,而元素本身的事件不會被解綁。觸發(fā)事件響應(yīng)方法,不觸發(fā)瀏覽器行為。 選擇器 :visible 和 :hidden 匹配顯示和隱藏的元素(css-display),需要指明元素或類,因?yàn)閔ead、script等元素也是...
閱讀 2686·2023-04-25 20:28
閱讀 1863·2021-11-22 09:34
閱讀 3694·2021-09-26 10:20
閱讀 1853·2021-09-22 16:05
閱讀 3094·2021-09-09 09:32
閱讀 2526·2021-08-31 09:40
閱讀 2108·2019-08-30 13:56
閱讀 3325·2019-08-29 17:01