如何删除所选复选框的disabled属性?

时间:2014-08-03 05:39:21

标签: jquery

我想仅删除所选复选框的属性

我的代码将其从所有

中删除

演示http://jsfiddle.net/XqUH2/8/

$('input[type="number"]').change(function(){
    var priceRow = $(this).parent().next();    
    priceRow.text('$'+Math.round($(this).val()*priceRow.attr('unit-price')*100)/100);    
    updateTotal();
});

$('.ad_promote_days').prop('disabled', true);
$('input[type="checkbox"]').change(function(){
    if($("input[type=checkbox]:checked").length == 0){
        $('.ad_promote_days').prop('disabled', true);
    }else{
        $('.ad_promote_days').prop('disabled', false);
    }
    updateTotal();    
});

function updateTotal(){
    var total = 0;    
    $('input[type="checkbox"]:checked').each(function(){            
           var priceRow = $(this).parents('tr').children('td[unit-price]');
           total += parseFloat(priceRow.text().replace('$',''));        
    });    
    $('#ad_promote_total_cost').text('$'+total);
}

2 个答案:

答案 0 :(得分:2)

$('input[type="checkbox"]').change(function(){
  if($(this).is(':checked')){ 
      $(this).closest('tr').find('.ad_promote_days').prop('disabled', false);
  }
  else{ 
      $(this).closest('tr').find('.ad_promote_days').prop('disabled', true);
  }
 updateTotal();    
});

演示:

http://jsfiddle.net/54rQL/1/

答案 1 :(得分:0)

$('.ad_promote_days').prop('disabled', true);
 $('input[type="checkbox"]').change(function(){
    if($(this).is(':checked')){

   $(this).parent().parent().parent().find('.ad_promote_days').attr('disabled', false);
    }else{
      $(this).parent().parent().parent().find('.ad_promote_days').attr('disabled', true);
}
updateTotal();    
});

Demo