2010-07-30 2 views
0

Nous avons une liste de jours en haut de l'en-tête du tableau et nous voulons désactiver la fonction Vérifier tout si le jour sélectionné est plus grand que le jour actuel (par exemple aujourd'hui 30ème, mais le 31ème sélectionné). Nous allons permettre à checkAll de fonctionner pour n'importe quelle date inférieure à la date actuelle. Comment pouvons-nous y parvenir?Comment prévenir checkAll sélection pour les prochaines dates?

<script type="text/javascript"> 
     jQuery(document).ready(function(){ 
      // This provides selectAll, clearAll capability 
      jQuery('#records').find('thead th').click(function(){ 
       var ch = jQuery(this).find("input[type='checkbox']").attr('checked'); 
       var col = jQuery(this).prevAll().length; 
       var ch = jQuery(this).find("input[type='checkbox']").attr('checked'); 
       jQuery('#records').find('tbody td').each(function(){ 
        var tdId = jQuery(this).attr('id'); 
        if(col == tdId) { 
         if(jQuery(this).hasClass('user-present')) { 
          // Toggle the value of attribute checked for the checkbox 
          jQuery(this).find("input[type='checkbox']").attr('checked', true); 
         } 
        } 
       }); 
      }); 

     }); 
    </script> 

Répondre

1

1) Vous pouvez marquer chaque date « futur » avec une classe CSS sur le côté serveur, puis il suffit d'écrire un sélecteur CSS approprié pour les filtrer;

2) Vous pouvez ajouter un attribut title avec une chaîne de date (par exemple 2010-07-30) à chaque élément et comparer ensuite deux dates.

var today = new Date(); 
var check_me = new Date("2012-12-21"); // element.attr("title") instead of "2012-12-21" in your case 
if (check_me <= today) 
{ 
    //Everything is ok 
} 
Questions connexes