我在查找以下jquery / checkbox行為的原因時遇到問題。$( this.obj + ' table.sgrid-content > thead > tr > th > input.select_all' ).on( 'click' , {grid:this} , function(event){var grid = event.data.grid;if( $(this).is(':checked') ){ $( grid.obj + ' table.sgrid-content > tbody > tr > td > input.select ' ).attr('checked','checked'); $( grid.obj + ' .sgrid-content > tbody > tr > td > input.select ' ).parents('tr').addClass('ui-state-highlight');} else { $( grid.obj + ' table.sgrid-content > tbody > tr > td > input.select ' ).removeAttr('checked'); $( grid.obj + ' table.sgrid-content > tbody > tr > td > input.select ' ).parents('tr').removeClass('ui-state-highlight');}});該代碼旨在按以下方式工作:-單擊input.select_all觸發事件-如果選中了input.select_all:將選中的屬性添加到table.sgrid-content中標記為.select的所有復選框-如果未選中:則刪除“ '屬性來自所有input.select項。另一個簡單的網格功能。而且有效。奇怪的是,它只能運行一次。我的意思是,您可以選擇所有復選框,然后取消選擇它們。完成該操作后,“全選”功能將停止工作。另一個奇怪的事情是,當我用螢火蟲檢查dom元素時,它們全部都變成了應該被選中的“ checked”屬性,但是它們的顯示和行為卻未被選中。選擇器可以正常工作。添加/刪除ui-state-highlight的代碼部分一直有效。explenation的字: 網格 -是我通過得到grid.obj(一ceratain DIV的基本ID)的對象請給我您的意見。
jQuery attr('checked','checked')僅工作一次
一只萌萌小番薯
2019-12-04 12:36:24