Mam problem ze znalezieniem przyczyny następującego zachowania jquery/checkbox.jquery attr ("sprawdzone", "sprawdzone") działa tylko raz
$(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');
}
});
Kod jest przeznaczony do pracy w następujący sposób: - kliknij input.select_all wyzwala zdarzenie - jeśli input.select_all jest sprawdzana: dodaj atrybut sprawdził wszystkie pola oznaczone jako .Wybrać ciągu table.sgrid- treść - jeśli nie: usuń atrybut "checked" ze wszystkich elementów input.select.
Jeszcze jedna prosta funkcja siatki. I działa. Dziwne jest to, że działa tylko raz. Rozumiem przez to, że możesz zaznaczyć wszystkie pola wyboru i odznaczyć je. Po tej operacji funkcja "Wybierz wszystko" przestaje działać.
Inną dziwną rzeczą jest, że gdy sprawdzam elementy dom z firebugiem, wszystkie one są sprawdzane = 'sprawdzane' attr tak jak powinny, ale wyświetlają się i zachowują, ponieważ nie zostały sprawdzone.
Selektory działają tak, jak powinny. Część kodu z dodawaniem/usuwaniem ui-state-highlight działa cały czas.
Słowo explenation: siatki - jest to obiekt, który mijam dostać grid.obj (zasadniczo identyfikator div ceratain)
Proszę dać mi swoją opinię.
użycie '.prop ('sprawdzone', true) i .prop ('sprawdzone', false)' zamiast '.attr ('sprawdzone', 'sprawdzone') lub .removeAttr'. attr do manipulowania sprawdzić/wybrane stany jest teraz przestarzałe w jQuery – codefreak
dzięki, teraz gdy o tym wspomnieć, problem zaczął się po aktualizacji lib jquery. Wielkie dzięki, nie wiedziałem! – PiWo