预警,我是JavaScript的新手,但我可以理解在他们已经编写时正在进行的计算,它写的是我自己的问题。我正在尝试为我们的网站创建一个在线税收计算器。我找到了工作的基础,但我需要更新它,以便计算正确。
目标:
用户输入他们的总收入并点击“计算”按钮。结果应显示纳税,医疗保险征收,最后显示净收入。净=总税收 - 医疗保险。
我在哪里:
我找到了一些可以使用的代码,为我提供了一些税收计算,我已将其更新为正确的值。但是,目前应用于所有税级的Medicare值(1.5%)不正确,实际上也有3个不同的级别。
我不确定如何将两个计算合并在一起,然后从总收入中扣除这些以得出净结果?我没有添加任何东西来进行最终计算,在这个阶段,我正在尝试研究如何在一个脚本中执行多个功能。
我正在尝试逐步建立这个,因为我一次做一个计算,但一旦我尝试它就难倒。我在http://www.faa.net.au/test/创建了一个测试页。
我真的很感激任何帮助。我正在等待JavaScript指南实际上花些时间并正确学习JavaScript。
我想补充的额外Medicare计算如下:
// Calculation below needs to replace Medicare above
if (income>0 && income<=19404) {
medicare = (income*0)/100;
}
else if (income>19404 && income<=22828) {
medicare = (income*10)/100;
}
else if (income>22828) {
medicare = (income*1.5)/100;
}
答案 0 :(得分:0)
您需要的javascript代码与此类似,我相信:
// I am using a javascript library called jQuery.
$(function(){
// On clicking the Calculate button
$('#calculate').on('click', function(){
// Get the value of user supplied income from the textbox
var income = parseInt($('#preIncome').val().trim()),
postIncome = 0,
medicare = 0;
console.log(income);
if(income > 0){
// Calculation below needs to replace Medicare above
if (income>0 && income<=19404) {
medicare = (income*0)/100;
}
else if (income>19404 && income<=22828) {
medicare = (income*10)/100;
}
else if (income>22828) {
medicare = (income*1.5)/100;
}
// Calculate the new income based on derived medicare value
postIncome = income - medicare;
}
// Set the new medicare and income values to the textboxes
$('#postIncome').val(postIncome);
$('#medicare').val(medicare);
});
});
这里有一个工作演示:http://jsfiddle.net/pratik136/YdWNA/
答案 1 :(得分:0)
如果我正确理解了这个问题,我认为你只需要使用两个变量,一个用于医疗保险计算,另一个用于税率。然后,当你有那些,你可以计算净收入。
因此在JavaScript中,它可能如下所示:
var medicare;
var tax;
var income;
// This is just your medicare calculation
if (income>0 && income<=19404) {
medicare = (income*0)/100;
}
else if (income>19404 && income<=22828) {
medicare = (income*10)/100;
}
else {
medicare = (income*1.5)/100;
}
// Hypothetical Tax calculation (I don't know the real tax rates)
if (income>0 && income<=20000) {
tax = (income*25)/100;
}
else {
tax = (income*40)/100;
}
// and now the net income using the calculated values
var netIncome=income-tax-medicare;
答案 2 :(得分:0)
以下是您表单的内容:
<form name="calc">
Gross Income: <input type="text" class="innerc resform" size="15" name="income">
<input type="button" onclick="calculate(this)" name="result" value="Calculate"
class="calcButton">
Income Tax: <input type="text" size="15" class="resform" name="tax">
Medicare Levy: <input type="text" size="15" class="resform" name="medicare">
Net Income: <input type="text" size="15" class="resform" name="net">
</form>
如果从计算按钮传递this
(注意更改的监听器和添加值),计算医疗保险税的功能可以是:
function calculate(element) {
var form = element.form;
var income = form.income.value;
// 0 for income less than threshold
var medicare = 0;
// Add 1% of income between 19404 and 22828
if (income > 19404 && income <= 22828) {
medicare = (income - 19404) * 0.01;
}
// Add 1.5% of income over 22828
if (income > 22828) {
medicare += (income - 22828) * 0.015;
}
}
希望这会让你前进。