0

我有一个关于 checkall 的问题,jQuery 中有一个“可选”方法和“checkall”事件。

如果我选择下面的两个复选框,它将被取消选中(上图),但如果我更改我的“td”的名称,它就会起作用。

(   cancel:'td:not(.**isaretle**)',)

你能帮我么?

这是一个演示:http: //jsfiddle.net/aldimeola1122/xUU4p/1/

4

1 回答 1

0

我想这就是你要找的:

(function ($) {
    'use strict';
    $(document).ready(function () {
        $('.checkAll').live('change', function () {
            var self = $(this),
                isChecked = self.is(':checked'),
                checked = isChecked ? 'checked' : '',
                text = isChecked ? 'Uncheck All' : 'Check All';
            $('.chc').attr('checked', checked);
            self.next().text(text);
        });
        $('.chc').live('change', function () {
            var chcLen = $('.chc').length,
                checkedLen = $('.chc:checked').length,
                lenMatches = chcLen === checkedLen,
                checked = lenMatches ? 'checked' : '',
                text = lenMatches ? 'Uncheck All' : 'Check All';
            $('.checkAll').attr('checked', checked).next().text(text);
        });
        $("#slctble").selectable({
            "filter": "td:not(.isaretle)",
            "stop": function () {
                $(".ui-selected input", this).each(function () {
                    this.checked = !this.checked;
                }); //end-ui-selected input
            } //endStopFunction
        }); //endSelectable
    }); //endWindowsLoad
}(jQuery.noConflict())); //end Function

更新小提琴:http: //jsfiddle.net/xUU4p/28/

于 2012-11-21T03:29:06.993 回答