今天寫靜態頁面,需要拿jquery去控制checkbox的check屬性,開始用的attr,每次設置完成後,點開f12觀察elements,後面每次,無論怎麼點擊checkbox,它的checked屬性都是選中的,於是上網查找,得以解決,下面是是轉載的內容
在jquery裏,有兩種操作元素屬性的方法,一種是attr(),另一種是prop()。
attr()的屬性在頁面首次加載時就確定。當頁面初始狀態checkbox沒有選中,("#cb1").attr("checked")爲undefined,點擊選中後,還是undefined,不管選中與否("#cb1").attr("checked")爲undefined,點擊選中後,還是undefined,不管選中與否(“#cb1”).attr(“checked”)始終都是undefined;當頁面初試狀態checkbox選中,$(“#cb1”).attr(“checked”)爲checked,之後取消選中還是checked。
prop()方法隨checked屬性改變而改變,選中時爲true,爲選中時爲false。
最後,總結下獲取和設置checked屬性的方法。
得到選中屬性
$("#id").prop("checked")
$("#id").get(0).checked)
document.getElementById("#id").checked
$("#id").is(":checked")
設置選中
$("#id").prop("checked",true)
$("#id").get(0).checked = true
document.getElementById("#id").checked = true