Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用JavaScript包含/添加多个计算?_Javascript_Html_Css_Calculator - Fatal编程技术网

如何使用JavaScript包含/添加多个计算?

如何使用JavaScript包含/添加多个计算?,javascript,html,css,calculator,Javascript,Html,Css,Calculator,预先警告,我对JavaScript不熟悉,但我能理解已经编写好的计算,这是我自己编写的问题。我正在尝试为我们的网站创建一个在线税务计算器。我已经找到了工作的基础,但我需要更新它,以便计算是正确的 目标: 用户输入总收入并单击“计算”按钮。结果应显示应纳税额、医疗保险征费以及最终的净收入。净额=医疗保险总税收 我现在的位置: 我找到了一些代码,这些代码为我提供了一些税务计算,我已经将其更新为正确的值。然而,目前适用于所有税级的医疗保险价值(1.5%)是不正确的,实际上也有3个不同的水平 我不知道如

预先警告,我对JavaScript不熟悉,但我能理解已经编写好的计算,这是我自己编写的问题。我正在尝试为我们的网站创建一个在线税务计算器。我已经找到了工作的基础,但我需要更新它,以便计算是正确的

目标:
用户输入总收入并单击“计算”按钮。结果应显示应纳税额、医疗保险征费以及最终的净收入。净额=医疗保险总税收

我现在的位置:
我找到了一些代码,这些代码为我提供了一些税务计算,我已经将其更新为正确的值。然而,目前适用于所有税级的医疗保险价值(1.5%)是不正确的,实际上也有3个不同的水平

我不知道如何将这两个计算合并在一起,然后从总收入中扣除,从而得出一个净结果?我还没有添加任何内容来进行最终计算,在这个阶段,我正在尝试解决如何在一个脚本中执行多个函数。

我试图通过一次做一个计算来逐步建立这个模型,但一尝试就被难倒了。我已经在创建了一个测试页面

我真的很感激在这方面的任何帮助。我正在等待一份JavaScript指南,以便抽出时间正确地学习JavaScript

我试图添加的额外医疗保险计算如下:

// 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和收入19404和收入22828){
医疗保险=(收入*1.5)/100;
}

我相信,您需要的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);
    });
});​
//我正在使用一个名为jQuery的javascript库。
$(函数(){
//单击“计算”按钮时
$('#calculate')。在('click',function()上{
//从文本框中获取用户提供的收入值
var income=parseInt($('#preIncome').val().trim()),
postIncome=0,
医疗保险=0;
控制台日志(收入);
如果(收入>0){
//下面的计算需要取代上面的医疗保险
如果(收入>0和收入19404和收入22828){
医疗保险=(收入*1.5)/100;
}
//根据衍生医疗保险价值计算新收入
收入-医疗保险;
}
//在文本框中设置新的医疗保险和收入值
$('#postIncome').val(postIncome);
$('医疗保险').val(医疗保险);
});
});​

这里有一个工作演示:

如果我正确理解了这个问题,我认为您只需要使用两个变量,一个用于医疗保险计算,另一个用于税率。当你有了这些,你可以计算出净收入

因此,在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;
var医疗保险;
风险价值税;
var收益;
//这只是你的医疗保险计算

如果(收入>0&&income19404&&income以下是您的表格:

<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>

希望这能让你继续下去。

你能在这里粘贴并测试你到目前为止所做的工作吗?你的实际问题是什么?你应该在这里发布一个最小的例子,而不是在其他地方。中等医疗保险金额不应该是
(收入*1)/100
?我已经尝试将当前代码粘贴到JSFIDLE,但没有效果。我是否要将当前JavaScript粘贴到这里?
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;
  }
}