jquery無法設(shè)置checkbox選中即沒有變成選中狀態(tài)
更新時(shí)間:2014年03月27日 11:46:20 作者:
設(shè)置以后checkbox并沒有變成選中狀態(tài),用chrome調(diào)試看了一下,checkbox中確實(shí)有checked屬性,針對這個(gè)問題,大家可以參考下本文
復(fù)制代碼 代碼如下:
$("input").attr("checked","checked")
設(shè)置以后checkbox并沒有變成選中狀態(tài),用chrome調(diào)試看了一下,checkbox中確實(shí)有checked屬性,而且,值為checked,但是頁面顯示仍然為未選中狀態(tài)
復(fù)制代碼 代碼如下:
$("input").prop("checked",true);
ttributes和properties之間的差異在特定情況下是很重要。jQuery 1.6之前 ,.attr()方法在取某些 attribute 的值時(shí),會(huì)返回 property 的值,這就導(dǎo)致了結(jié)果的不一致。從 jQuery 1.6 開始, .prop()方法 方法返回 property 的值,而 .attr() 方法返回 attributes 的值。
例如, selectedIndex, tagName, nodeName, nodeType, ownerDocument, defaultChecked, 和 defaultSelected 應(yīng)使用.prop()方法進(jìn)行取值或賦值。 在jQuery1.6之前,這些屬性使用.attr()方法取得,但是這并不是元素的attr屬性。他們沒有相應(yīng)的屬性(attributes),只有特性(property)。
例如,考慮一個(gè)DOM元素的HTML標(biāo)記中定義的<input type="checkbox" checked="checked" /> ,并假設(shè)它是一個(gè)JavaScript變量命名的elem :
elem.checked true (Boolean) 將改變復(fù)選框的狀態(tài)
$(elem).prop("checked") true (Boolean) 將改變復(fù)選框的狀態(tài)
elem.getAttribute("checked") "checked" (String) 不會(huì)改變的復(fù)選框的初始狀態(tài);
$(elem).attr("checked") (1.6) "checked" (String) 不會(huì)改變的復(fù)選框的初始狀態(tài);
$(elem).attr("checked") (1.6.1+) "checked" (String) 將改變復(fù)選框的狀態(tài)
$(elem).attr("checked") (pre-1.6) true (Boolean) 將改變復(fù)選框的狀態(tài)
根據(jù)W3C的表單規(guī)范 ,在checked屬性是一個(gè)布爾屬性,這意味著只要該 attribute 存在,即使它沒有值,或是一個(gè)空字符串,該屬性對應(yīng)的 property 就是 true。以下推薦的是兼容瀏覽器方式,判斷 checkbox 元素的 checked 屬性是否為"真" 的方法:
復(fù)制代碼 代碼如下:
if ( elem.checked )
if ( $(elem).prop("checked") )
if ( $(elem).is(":checked") )
如果你使用jQuery 1.6 ,代碼if ( $(elem).attr("checked") ),將獲得一個(gè)屬性(attribute) ,它不改變該復(fù)選框被選中和選中。它只是用來存儲(chǔ)默認(rèn)或選中屬性的初始值。為了保持向后兼容,.attr() 方法從 jQuery 1.6.1+ 開始除了返回屬性值外,還會(huì)更新 property 屬性,因此 boolean attribute(布爾屬性)不需要通過 .prop() 來改變其值。推薦使用上述方法之一,來取得 checked 的值。
您可能感興趣的文章:
- jQuery操作CheckBox的方法介紹(選中,取消,取值)
- jquery判斷checkbox(復(fù)選框)是否被選中的代碼
- jQuery判斷checkbox是否選中的3種方法
- Jquery遍歷checkbox獲取選中項(xiàng)value值的方法
- jQuery中獲取checkbox選中項(xiàng)等操作及注意事項(xiàng)
- jQuery判斷checkbox(復(fù)選框)是否被選中以及全選、反選實(shí)現(xiàn)代碼
- jQuery點(diǎn)擊tr實(shí)現(xiàn)checkbox選中的方法
- jQuery將所有被選中的checkbox某個(gè)屬性值連接成字符串的方法
- jQuery實(shí)現(xiàn)點(diǎn)擊行選中或取消CheckBox的方法
相關(guān)文章
jQuery操作動(dòng)態(tài)生成的內(nèi)容的方法
這篇文章主要介紹了jQuery操作動(dòng)態(tài)生成的內(nèi)容的方法,對比分析了bind與live方法,說明了live方法在處理新增元素時(shí)的作用,需要的朋友可以參考下2016-05-05
jquery插件沖突(jquery.noconflict)解決方法分享
本文主要解決了如何讓多個(gè)不同的jQuery版本在同一個(gè)頁面并存而不沖突的方法,需要的朋友可以參考下2014-03-03
通過jquery實(shí)現(xiàn)tab標(biāo)簽瀏覽效果
這篇文章主要介紹了通過jquery實(shí)現(xiàn)tab標(biāo)簽瀏覽效果2007-02-02
jQuery簡單創(chuàng)建節(jié)點(diǎn)的方法
這篇文章主要介紹了jQuery簡單創(chuàng)建節(jié)點(diǎn)的方法,涉及jQuery獲取節(jié)點(diǎn)及append添加元素創(chuàng)建節(jié)點(diǎn)的相關(guān)技巧,需要的朋友可以參考下2016-09-09
jquery中g(shù)et和post的簡單實(shí)例
本篇文章主要是對jquery中g(shù)et和post的簡單實(shí)例進(jìn)行了介紹,需要的朋友可以過來參考下,希望對大家有所幫助2014-02-02
一個(gè)背景云變換js特效 鼠標(biāo)移動(dòng)背景云變化
分享一個(gè)背景云變換js特效隨著鼠標(biāo)的移動(dòng),背景云會(huì)不斷的變化位置和形狀,感興趣的朋友可以研究下2012-12-12

