核取方塊應用及遇到的問題

2022-08-31 00:33:13 字數 1200 閱讀 8766

最近在重新翻看繼續學習《鋒利的jquery》這本書中對核取方塊最基本的應用(對核取方塊進行全選、全不選和反選),在全選和全不選中遇到了乙個詭異的問題

html**:

你的愛好運動是?

足球

籃球

羽毛球

桌球

jquery**:

$("#checkall").click(function() );

$("#checkno").click(function() )

$("#checkedrev").click(function() );

});

然而這樣寫會出現乙個奇怪又詭異的問題:第一次執行全選然後執行全不選或者先執行全不選然後全選時,程式是執行正常的,然後當點選第二次全選或者全不選時,選項前面的勾就沒有再勾上了。

這時我們就不得不談談jquery中attr()和prop()方法的異同了:

在jquery1.6版之前,都是使用attr()方法來訪問物件屬性的,例如取乙個的alt屬性,就可以使用$(「img」).attr(「alt」)

但是在訪問input的disabled屬性的時候,就會有些問題。在有些瀏覽器裡,只要寫了disabled屬性就可以,有些則要寫:disabled=「disabled」。

而在使用prop時。返回值是標準屬性:true/false,例如$(「#check」).prop(「checked」)不會返回「disabled」或「」只會返回true/false。

當然,賦值的時候也如此。

那什麼情況下使用attr()什麼時候使用attr呢:

第乙個原則:只新增屬性名稱該屬性就會生效應該使用prop()

第二個原則:只存在true/false的屬性應該使用prop()

因此,**更正如下:

$("#checkall").click(function() );

$("#checkno").click(function() )

$("#checkedrev").click(function() );

});

jquery核取方塊應用

您做喜歡的運動是什麼呢?足球 跑步 籃球 游泳 html頁面如下 全選 checkall click function event 在專案中遇到過這種情況 使用以上 實現全選功能,第一次的時候可以實現全選功能,但是後面就失效了我用火狐瀏覽器除錯了一下,操作的核取方塊已經有了check屬性但是頁面並未...

單選框和核取方塊的應用

在用表單設計調查表時,為了減少使用者的操作,使用選擇框是乙個好主意,在html的標記中有兩種選擇框,即單選框和核取方塊,兩者的區別是單選框中的選項使用者只能選擇一項,而核取方塊中的選項使用者可以任意選擇多項,甚至全選。請看下面的例子 下面給出這個例子的源 結合 來講各引數的設定 form name ...

JSF核取方塊全選問題

jsf 中核取方塊h selectbooleancheckbox 標籤的用法如下 每個物件有各自有乙個屬性用來儲存其選中與否狀態,這個屬性為boolean型變數,對應到selectbooleancheckbox的值為true false 如果是乙個列表,每條記錄都有乙個核取方塊,用來提供 批量 操作...