解決jquery操作checkbox火狐下第二次無法勾選問題
更新時間:2014年02月10日 11:45:54 投稿:whsnow
在工作中使用jquery操作checkbox,進(jìn)行全選、反選,現(xiàn)在的問題是火狐下第二次無法勾選問題,在下面有個詳細(xì)的解答,感興趣的朋友可以參考下
最近在工作中使用jquery操作checkbox,使用下面方法進(jìn)行全選、反選:
復(fù)制代碼 代碼如下:
var ischecked=allCheckObj.is(':checked');
ischecked?checksObj.attr('checked',true):checksObj.attr('checked',false);
調(diào)試時在ie沒有問題,考慮到兼容性,試試了firefox,遇到了問題。于是乎,做了如下實驗:
復(fù)選框綁定了click事件,點一次選中,再點擊取消選中,依次類推。這個功能在ie中沒問題,但是在firefox中測試的時候,前兩次都沒有問題,可以正常顯示選中和取消,但當(dāng)再去選中的時候,復(fù)選框的屬性checkbox值變?yōu)?quot;checked",沒問題,但是復(fù)選框卻不在顯示選中狀態(tài),明明屬性值改了,但是卻不顯示勾選,太詭異了。代碼修改了卻得不到正確的顯示狀態(tài),糾結(jié)了很久,找不到原因。
正解:后來經(jīng)偶像指點,原來是jQuery版本問題。操作屬性用的是
$("**").attr("attrName");而jQuery的版本用的是1.9,這就是存在一個兼容性和穩(wěn)定性問題。
jQuery API明確說明,1.6+的jQuery要用prop,尤其是checkBox的checked的屬性的判斷,即
復(fù)制代碼 代碼如下:
$("input[type='checkbox']").prop("checked");
$("input[type='checkbox']").prop("disabled", false);
$("input[type='checkbox']").prop("checked", true);
在使用是將attr改為prop,問題得解。
你遇到這個奇怪的問題了嗎?趕緊試試吧
相關(guān)文章
Jquery+Ajax+xml實現(xiàn)中國地區(qū)選擇三級聯(lián)動菜單效果(推薦)
下面小編就為大家?guī)硪黄狫query+Ajax+xml實現(xiàn)中國地區(qū)選擇三級聯(lián)動菜單效果(推薦)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-06-06jQuery的實現(xiàn)原理的模擬代碼 -2 數(shù)據(jù)部分
在 jQuery 中,可以對每一個 DOM 對象保存私有的數(shù)據(jù)。2010-08-08使用jQuery獲取radio/checkbox組的值的代碼收集
很久沒有寫JQuery的文章了。今天來看下JQ對天Checkbox復(fù)選框的操作??聪旅娴囊粋€小例子。在這個例子中包括了以下幾個功能2009-12-12關(guān)于兩個jQuery(js)特效沖突的bug的解決辦法
下面小編就為大家?guī)硪黄P(guān)于兩個jQuery(js)特效沖突的bug的解決辦法。小編覺得挺不錯的,現(xiàn)在就分享 給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-09-09jQuery實現(xiàn)別踩白塊兒網(wǎng)頁版小游戲
本文主要介紹了jQuery實現(xiàn)別踩白塊兒網(wǎng)頁版小游戲的思路分析與代碼。具有一定的參考價值,下面跟著小編一起來看下吧2017-01-01jQuery實現(xiàn)鼠標(biāo)經(jīng)過購物車出現(xiàn)下拉框代碼(推薦)
在做web前端項目開發(fā)的時候,使用jquery庫的感觸頗多,下面小編通過寫購物車的下拉框做法,把我的想法給大家分享一下,感興趣的朋友可以參考下2016-07-07jQuery.Highcharts.js繪制柱狀圖餅狀圖曲線圖
這篇文章主要介紹了jQuery.Highcharts.js繪制柱狀圖餅狀圖曲線圖的方法,非常的實用,小伙伴們可以直接拿到項目中使用。2015-03-03