今天饒有興趣,**一下單/核取方塊是如何判斷被選中的。在以前(學校)的時候,判斷方法是判斷它的屬性值.attr("checked")=="checked".如下**所示:
if($(this).attr("checked")=="checked")今天要告訴大家另外一種方法。第二種方法是使用了jquery的方法prop().這個方法的作用是:獲取或者設定匹配元素的屬性值。例如可以使用這個方法設定元素的id,$("selecter").prop(),
獲取元素的name,$("selecter").prop(name),以及其他的屬性$("selecter").prop(attr);
所以想要獲取單/核取方塊是否被選中,則需要獲取$("selecter").prop("checked")即可。
兩種方法達到效果一樣,prop的用法是jquery1.6新增的新方法,它有一些特性:
大家都知道有的瀏覽器只要寫disabled,checked就可以了,而有的要寫成disabled = "disabled",checked="checked",比如用attr("checked")獲取checkbox的checked屬性時選中的時 候可以取到值,值為"checked"但沒選中獲取值就是undefined。
jq提供新的方法「prop」來獲取這些屬性,就是來解決這個問題的,以前我們使用attr獲取checked屬性時返回"checked"和"",現在使用prop方法獲取屬性則統一返回true和false。
那麼,什麼時候使用attr(),什麼時候使用prop()?
1.新增屬性名稱該屬性就會生效應該使用prop();
2.是有true,false兩個屬性使用prop();
3.其他則使用attr();
專案中jquery公升級的時候大家要注意這點!
以下是官方建議attr(),prop()的使用:
attribute/property
.attr()
.prop()
accesskey
√align
√async√√
autofocus√√
checked√√
class
√contenteditable
√draggable
√href√id
√label
√location ( i.e. window.location )√√
multiple√√
readonly√√
rel√
selected√√
src√
tabindex
√title
√type
√width ( if needed over.width()
)
√另外附上我的測試源**:
genuis:還有執行效果截圖:sawadk:
vladimir:
victor:
reaper:
jquery核取方塊
input name versioncb checkbox each function else 1 判斷radio 複製 如下 var selected input name selectid checked val 若未被選中 則val null if selected null else 2 ...
jquery核取方塊狀態的判斷
1.checked的選中狀態 不設定checked是預設不選被選中的,一旦設定checked false 或者checked false或者checked true 或者checked true或者不設定任何值,都會被解釋為選中。input type checkbox name test id te...
jquery核取方塊應用
您做喜歡的運動是什麼呢?足球 跑步 籃球 游泳 html頁面如下 全選 checkall click function event 在專案中遇到過這種情況 使用以上 實現全選功能,第一次的時候可以實現全選功能,但是後面就失效了我用火狐瀏覽器除錯了一下,操作的核取方塊已經有了check屬性但是頁面並未...