jquery
2011-03-28 70 views 0 likes 
0

我正在使用prettyCheckboxes,我想改变它,以便div包装也可以单击以及单选按钮。当前JS单选按钮/标签prettyCheckboxes使父母可点击?

 $label = $('label[for="'+$(this).attr('id')+'"]'); 

     // Add the checkbox holder to the label 
     $label.prepend("<span class='holderWrap'><span class='holder'></span></span>"); 

     // If the checkbox is checked, display it as checked 
     if($(this).is(':checked')) { $label.addClass('checked'); }; 

     // Assign the class on the label 
     $label.addClass(settings.className).addClass($(this).attr('type')).addClass(settings.display); 

     // Assign the dimensions to the checkbox display 
     $label.find('span.holderWrap').width(settings.checkboxWidth).height(settings.checkboxHeight); 
     $label.find('span.holder').width(settings.checkboxWidth); 

     // Hide the checkbox 
     $(this).addClass('hiddenCheckbox'); 

     // Associate the click event 
     $label.bind('click',function(){ 
      $('input#' + $(this).attr('for')).triggerHandler('click'); 

      if($('input#' + $(this).attr('for')).is(':checkbox')){ 
       $(this).toggleClass('checked'); 
       $('input#' + $(this).attr('for')).checked = true; 

       $(this).find('span.holder').css('top',0); 
      }else{ 
       $toCheck = $('input#' + $(this).attr('for')); 

       // Uncheck all radio 
       $('input[name="'+$toCheck.attr('name')+'"]').each(function(){ 
        $('label[for="' + $(this).attr('id')+'"]').removeClass('checked'); 
       }); 

       $(this).addClass('checked'); 
       $toCheck.checked = true; 
      }; 
     }); 

,我想使它所以$(本).parent()也称点击功能。

任何想法我可以做到这一点?

回答

0

.add使用创建一个jQuery对象,它是自+父:

var labelAndParent = $label.add($(this).parent()); 

然后绑定到对象:

labelAndParent.bind('click',function(){ 
    // ... 
}); 
相关问题