關(guān)于input全選反選惡心的異常情況
上一篇講到:第一次點擊全選按鈕input顯示對勾,第二次則不顯示,需要用prop來添加checked屬性。
但是用prop會出現(xiàn)一個問題,對勾顯示,而checked屬性不會被添加(比如:$("input[type='checkbox'][name='che']").attr("checked") 獲取結(jié)果為undefined),這樣就無法通過if語句判斷是否選中,從而實現(xiàn)反選功能。
我們先來理一下思路:既然“反選”功能的實現(xiàn)是通過判斷是否有checked屬性,所以當(dāng)每次執(zhí)行“全選”“反選”功能時,把checked屬性都清除掉,這樣之前重復(fù)添加的checked屬性每次都會進(jìn)行清除。示例代碼如下:
//全選
$("#quanxuan").click(function(){
$("#tb").find("input[type='checkbox'][name='che']").removeAttr("checked");
$("#tb").find("input[type='checkbox'][name='che']").prop("checked", true);
});
//反選
$("#fanxuan").click(function(){
$("#tb").find("input[type='checkbox'][name='che']").each(function(){
if($(this).is(":checked")){
$(this).removeAttr("checked");
$(this).prop("checked",false);
}else{
$(this).removeAttr("checked");
$(this).prop("checked","checked");
}
});
});
目前只能想到這種冗余的辦法了,日后遇到新的解決方法再補充。
以上所述是小編給大家介紹的關(guān)于input全選反選惡心的異常情況,非常不錯,具有參考借鑒價值,希望對大家有所幫助!
相關(guān)文章
html中的input標(biāo)簽的checked屬性jquery判斷代碼
input 標(biāo)簽具有checked屬性,而當(dāng)input標(biāo)簽的type屬性設(shè)為button時,如果給input標(biāo)簽的checked屬性賦值時,在vs中會報錯,提示 特性checked不是元素input的有效特性2012-09-09
jquery設(shè)置元素的readonly和disabled的寫法
Jquery的api中提供了對元素應(yīng)用disabled和readonly屬性的方法,在這里記錄下,感興趣的朋友可以練練手了2013-09-09
jQuery實現(xiàn)的簡潔下拉菜單導(dǎo)航效果代碼
這篇文章主要介紹了jQuery實現(xiàn)的簡潔下拉菜單導(dǎo)航效果代碼,通過簡單的自定義函數(shù)實現(xiàn)頁面樣式切換功能,非常簡潔實用,需要的朋友可以參考下2015-08-08
(模仿京東用戶注冊)用JQuery實現(xiàn)簡單表單驗證,初學(xué)者必看
下面小編就為初學(xué)者們分享一篇(模仿京東用戶注冊)用JQuery實現(xiàn)簡單表單驗證,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-01-01

