2009-09-09 101 views
1

我有一個需求,我需要清除「全選」複選框,以防用戶手動取消選擇任何數據行。 這是通過在onRowSelect(jqgrid事件)事件中檢測到的。 代碼片段如下,並按預期工作。我應該在刪除之前檢查'disabled'屬性是否存在?

onSelectRow: function(){$("input:checkbox[id='cb_jqg']").removeAttr('checked');} 

我想知道的事情是我是否應該檢查複選框已選中之前,我清除它關閉或可我只是清楚它(因爲它不具有任何影響)如上面完成。

是否有任何性能/代碼倫理問題與我使用的語法?

回答

3

在設置該值之前添加檢查將比僅僅任意設置它們更簡單,因爲它必須檢查。

從道德上講,它不會拋出一個錯誤,所以所有的公平的愛情和編碼,對吧?

+0

感謝您的回覆。這與我在編寫代碼時的推理一致。 後來我意識到「選擇所有」狀態並不是那麼頻繁,所以最好是檢查一下它是否被選中(並且因爲它經常被選中而沒有被選中)什麼也不做。 對此有何想法? – Nrj 2009-09-09 04:03:17

0

這看起來像你有多個複選框與id相同。這在HTML中無效。您可以改用這些複選框相同的name

此外,設置一個複選框的checkedness的更標準的方式checkbox元素的checked屬性被簡單地設置爲truefalse,而不是依賴於jQuery的屬性處理方法。

相關問題