Изменить число в зависимости от активных чекбоксов.

Yulo

Постоялец
Регистрация
21 Апр 2008
Сообщения
153
Реакции
179
В коде есть $width имеет некоторое число которое умножается на 10, если активен один чекбокс. Как сделать чтоб если будут активны два чекбокса то уножение происходило на 17, если три то 41.
Чекбоксы #chanel1 #chanel2 #chanel3
JavaScript
Код:
function Calc() {
    var $width = Number($('#wlabel').html())*10;
    var $height = Number($('#hlabel').html());
    var $currency = $('#currency').html();
  
    if($currency == 0)
        $currency = -1;
  
    var $tabs = $('#tabs').tabs();
    var $active = $tabs.tabs( "option", "active" );
    var $cost = 3;
  
    if ($active == 0){
        var $cost = 30;
        var $sCost = 'Первое свойство';
    };
    if ($active == 1){
        var $cost = 5;
        var $sCost = 'Второе свойство';
    };
    if ($active == 2){
        var $cost = 7;
        var $sCost = 'Третье свойство';
    };
      
    var $chanel1 = 0;
    var $chanel2 = 0;
    var $chanel3 = 0;
    var $delivery = 0;
    var $assembly = 0;
    var $additional = '';
  
    if ($("#chanel1").prop("checked")){
        $chanel1 = 1;
        $additional = ' Канал 1 ';
    };
    if ($("#chanel2").prop("checked")){
        $chanel2 = 1;
        $additional += ' Канал 2 ';
      
    };
        if ($("#chanel3").prop("checked")){
        $chanel3 = 1;
        $additional = ' Канал 3 ';
    };
    if ($("#delivery :selected").val()=="33")
    {
        $delivery = 33;
        $('#deliverylabel').html('33');
        $additional += ' доставка ';
    }else
    {
        $('#deliverylabel').html('0');
    };
    if ($("#assembly :selected").val()=="44")
    {
        $('#assemblylabel').html('44');
        $assembly = 44;
        $additional += ' монтаж ';
    }else
        $('#assemblylabel').html('0');
  
    var $summ = ($width * $height)*($chanel1 + $chanel2 + $chanel3);

  
    $('#sum').html(numeric_format($summ.toFixed(2)) + ' руб. ');
    $('#questionlabel').html(' Количество дней ' + $height + '<br>' + 'Выбранные каналы' + $additional + '<br>' + ' Всего: ' + numeric_format($summ.toFixed(2)) + ' руб.');
    //' ('+ $('#wlabel').html() + 'x'+ $('#hlabel').html() +')'
  
}

UPD Сделал сам, подсчитал количество активных чекбоксов и в зависимости от их каличества сделал условие на сколько умножать.
 
Последнее редактирование:
Назад
Сверху