2014-11-22 3 views
-1

Я рассчитываю TAX/TDR автоматически в форме.Рассчитать налог/TDR автоматически в веб-форме

Но, он не работает. Что я здесь делаю неправильно?

Вкладка форма включает в себя:

Сумма: пользователь ввел

Тип карты: выберите опцию

Visa (добавить 20% до суммы) Amex карты (добавить 17,5% до суммы) другие (добавить 15% суммы)

Гранд Итого: сумма + выбранный тип карты% количество

<html> 
<head> 

<script> 

var calcObject = { 
    amountNull : '0.00', 
    amountTax : '0.00', 
    amountTotal : '0.00', 
}; 

run : function() { 
    var amount = $('#amount').val(); 
    var tax = $('#tax').val(); 
    var included = $('#tax_included').is(':checked'); 
    if (amount !== '' && tax !== '') { 
     if (included) { 
      var amountNew = amount/((tax/100) + 1); 
      calcObject.amountTax = parseFloat(amount) - parseFloat(amountNew); 
      calcObject.amountTotal = amountNew.toFixed(2); 
     } else { 
      calcObject.amountTax = (amount * tax)/100; 
      calcObject.amountTotal = parseFloat(amount) + parseFloat(calcObject.amountTax); 
     } 
     $('#tax_amount').val(parseFloat(calcObject.amountTax).toFixed(2)); 
     $('#total_amount').val(parseFloat(calcObject.amountTotal).toFixed(2)); 
    } else { 
     $('#tax_amount').val(calcObject.amountNull); 
     $('#total_amount').val(calcObject.amountNull); 
    } 
} 


$(function() { 

    $('#amount').keyup(function() { 
     calcObject.run(); 
    }); 

    $('#tax_included').click(function() { 
     calcObject.run(); 
    }); 

    $('#tax').change(function() { 
     calcObject.run(); 
    }); 

}); 

</script> 
</head> 
<body> 
<form id="calculator" method="post"> 

    <table class="tbl_insert"> 
     <tr> 
      <th><label for="amount">Amount:</label></th> 
      <td> 
       <input type="text" name="amount" id="amount" value="" class="field" /> 
      </td> 
     </tr> 
     <tr> 
      <th><label for="tax_included">TDR included?:</label></th> 
      <td> 
       <input type="checkbox" name="tax_included" id="tax_included" /> 
      </td> 
     </tr> 
     <tr> 
      <th><label for="tax">Card Type :</label></th> 
      <td> 
       <select name="tax" id="tax" class="select"> 
        <option value="20">VISA</option> 
        <option value="17.5">Amex card</option> 
        <option value="15">other</option> 
       </select> 
      </td> 
     </tr> 
     <tr> 
      <th><label for="tax_amount">VAT/Tax:</label></th> 
      <td> 
       <input type="text" name="tax_amount" id="tax_amount" 
        value="0.00" class="field" disabled="disabled" /> 
      </td> 
     </tr> 
     <tr> 
      <th><label for="total_amount">Total:</label></th> 
      <td> 
       <input type="text" name="total_amount" id="total_amount" 
        value="0.00" class="field" disabled="disabled" /> 
      </td> 
     </tr> 
    </table> 

</form> 
</body> 
</html> 
+1

Что не работает ? Где ошибка? –

+0

ничего не вычисляет, ... –

+0

У вас возникли ошибки в консоли? Должны быть некоторые ошибки. –

ответ

1

У вас есть несколько ошибок.

  1. Синтаксическая ошибка с определением объекта calcObject
  2. Jquery не входит

Я неподвижную их и это будет работать ...

JSFIDDLE DEMO

<html> 
<head> 
<head> 
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
</head> 
<script> 
var calcObject = { 
    amountNull : '0.00', 
    amountTax : '0.00', 
    amountTotal : '0.00', 
run : function() { 
    var amount = $('#amount').val(); 
    var tax = $('#tax').val(); 
    var included = $('#tax_included').is(':checked'); 
    if (amount !== '' && tax !== '') { 
     if (included) { 
      var amountNew = amount/((tax/100) + 1); 
      calcObject.amountTax = parseFloat(amount) - parseFloat(amountNew); 
      calcObject.amountTotal = amountNew.toFixed(2); 
     } else { 
      calcObject.amountTax = (amount * tax)/100; 
      calcObject.amountTotal = parseFloat(amount) + parseFloat(calcObject.amountTax); 
     } 
     $('#tax_amount').val(parseFloat(calcObject.amountTax).toFixed(2)); 
     $('#total_amount').val(parseFloat(calcObject.amountTotal).toFixed(2)); 
    } else { 
     $('#tax_amount').val(calcObject.amountNull); 
     $('#total_amount').val(calcObject.amountNull); 
    } 
    } 
}; 


$(function() { 

    $('#amount').keyup(function() { 
     calcObject.run(); 
    }); 

    $('#tax_included').click(function() { 
     calcObject.run(); 
    }); 

    $('#tax').change(function() { 
     calcObject.run(); 
    }); 

}); 
</script> 

</head> 
<body> 
<form id="calculator" method="post"> 

    <table class="tbl_insert"> 
     <tr> 
      <th><label for="amount">Amount:</label></th> 
      <td> 
       <input type="text" name="amount" id="amount" value="" class="field" /> 
      </td> 
     </tr> 
     <tr> 
      <th><label for="tax_included">TDR included?:</label></th> 
      <td> 
       <input type="checkbox" name="tax_included" id="tax_included" /> 
      </td> 
     </tr> 
     <tr> 
      <th><label for="tax">Card Type :</label></th> 
      <td> 
       <select name="tax" id="tax" class="select"> 
        <option value="20">VISA</option> 
        <option value="17.5">Amex card</option> 
        <option value="15">other</option> 
       </select> 
      </td> 
     </tr> 
     <tr> 
      <th><label for="tax_amount">VAT/Tax:</label></th> 
      <td> 
       <input type="text" name="tax_amount" id="tax_amount" 
        value="0.00" class="field" disabled="disabled" /> 
      </td> 
     </tr> 
     <tr> 
      <th><label for="total_amount">Total:</label></th> 
      <td> 
       <input type="text" name="total_amount" id="total_amount" 
        value="0.00" class="field" disabled="disabled" /> 
      </td> 
     </tr> 
    </table> 

</form> 
</body> 
</html> 
+0

hi thanx very –

+0

Мне нужна еще одна услуга, мне нужно добавить еще одну вкладку, которая рассчитает 12,36% по НДС/сумме налога и добавит ее Всего, .. –

Смежные вопросы