2012-11-12 71 views
0

我有一個關於checkall的問題,jQuery中有一個「可選擇」方法和「checkall」事件。jQuery selectable和checkall衝突

如果我選擇下面的兩個複選框,它將被取消選中(上圖),但是如果我更改了我的「td」的名稱,它就會起作用。

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

你能幫我嗎?

這裏是一個演示:http://jsfiddle.net/aldimeola1122/xUU4p/1/

+0

你想要的東西坦率地說不能得到? – Kashif

+0

如果我選擇checkbox1和checkbox2,則必須選中「全選」複選框。但在這裏它不起作用。 ------------------------------------------- http:// jsfiddle.net/aldimeola1122/xUU4p/9/ -------------------------------------- ---------------------------------- 但是,如果我改變jQuery中的「isaretle」的名稱,它的工作原理很好。 這次「可選擇」方法不適用。我想都(檢查和可選) – aldimeola1122

回答

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/