Hi everybody,

I'm using the tablesorter plugin with the zebra widget and I've run
into an
issue with IE8. I'm setting a number of tablerow (tr) elements to
invisible
and then run a tablesorter update + appendCache action to make sure
the
zebra widget picks up on the changed structure of the table. This
works fine
in all browsers except IE8. With a bit of debugging I've pinpointed it
with
reasonable certainty to the appendCache function in tablesorter
(actually
appendToTable) but I can't find anything to explain why IE8 will not
cooperate.

My own code is copied in below. What it does is that dependent on a
value in
a dropdown box and a match with a server-side generated javascript
array it
will hide certain tablerows.

Any help in explaining why tablesorter+zebra doesn't process this
correctly
in IE8 would be much appreciated!


$('.dropdown_hide').change(function() {
        // Reset the checked flag for all checkboxes
        $('input:checkbox').each(
            function() {
                this.checked = '';
            }
        );
        // Add class=hidden to every tr that is the grandparent of a
checkbox
          $('input:checkbox').each(
            function() {
                $(this).parent().parent('tr').addClass('hidden');
            }
        );
        // Remove the hidden class from the table header
        $('#select_deselect').parent().parent('tr').removeClass
('hidden');
        // Loop through the javascript array and see if there's a
match with
        // the value that's provided by the dropdown. If there's a
match
        // remove the class=hidden so the tr is shown
        if ($('select').val() == 0) {
            $('input:checkbox').each(
                function() {
                    $(this).parent().parent('tr').removeClass
('hidden');
                }
            );
        } else {
            for (i = 0; i < rbacArray.length; i++ ) {
                if (rbacArray[i][0] == $('select').val()) {
                    $('input:checkbox').each(
                        function() {
                            if ($(this).val() == rbacArray[i][1]) {
                               $(this).parent().parent
('tr').removeClass('hidden');
                            }
                        }
                    );
                }
            }
        }
        $(".stripeMe").trigger("update");
        $(".stripeMe").trigger("appendCache");
    });



Thanks, Meint

Reply via email to