从函数返回值并使用它

时间:2015-12-07 11:32:01

标签: javascript function return

我正在尝试从函数中获取值,然后在其他函数中使用它,但我无法执行此操作...

第一个函数unidadesTotalCalculate从两个输入中获取值,然后将它们相乘并将其打印到元素。

这个相同的函数使用不同的元素运行3次,然后我需要将这三个的结果SUM并将其打印到另一个元素。这是第二个函数,totalBarUpdateStandard()。

你可以帮我弄清楚发生了什么吗?我无法从每个函数中获取值并使用它。

 function unidadesTotalCalculate(unidadeID, rangeID, print) {
        var value = unidadeID.val();
        var rangevalue = rangeID.val();

        var valueSUM = value * rangevalue;

        jQuery(print).text(valueSUM + '€');
        return valueSUM;

    }


 function totalBarUpdateStandard() {
        var value1 = unidadesTotalCalculate(jQuery('#doenteagudo-standard-dialise-unidades'), jQuery('#doenteagudo-standard-dialise-range'), '#doenteagudo-standard-dialise-total');
        var value2 = unidadesTotalCalculate(jQuery('#doenteagudo-standard-plasma-unidades'), jQuery('#doenteagudo-standard-plasma-range'), '#doenteagudo-standard-plasma-total');
        var value3 = unidadesTotalCalculate(jQuery('#doenteagudo-standard-plasmaferese-unidades'), jQuery('#doenteagudo-standard-plasmaferese-range'), '#doenteagudo-standard-plasmaferese-total');

        var valueTotal = value1 + value2 + value3;

        jQuery('#demo').text(valueTotal + '€');


    }

2 个答案:

答案 0 :(得分:1)

以下是您的方案的解决方案,希望它对您有所帮助,我认为jQuery(print).text(valueSUM + '€');是导致问题的原因......它应该是jQuery(打印).val(valueSUM +'€ ')..只需将其置于静态HTML并进行测试

<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
</head>
<body>
<input id="doenteagudo-standard-dialise-unidades" value="2" />
<input id="doenteagudo-standard-dialise-range"  value="2"/>
<input id="doenteagudo-standard-dialise-total" />

<input id="doenteagudo-standard-plasma-unidades" value="2" />
<input id="doenteagudo-standard-plasma-range" value="2"/>
<input id="doenteagudo-standard-plasma-total" />


<input id="doenteagudo-standard-plasmaferese-unidades" value="2" />
<input id="doenteagudo-standard-plasmaferese-range" value="2" />
<input id="doenteagudo-standard-plasmaferese-total" />

<div id="demo"></div>

<button id="t"></button>

<script>
function unidadesTotalCalculate(unidadeID, rangeID, print) {
        var value = unidadeID.val();
        var rangevalue = rangeID.val();

        var valueSUM = value * rangevalue;

        jQuery(print).val(valueSUM + '€');
        return valueSUM;

    }


 function totalBarUpdateStandard() {
        var value1 = unidadesTotalCalculate(jQuery('#doenteagudo-standard-dialise-unidades'), jQuery('#doenteagudo-standard-dialise-range'), '#doenteagudo-standard-dialise-total');
        var value2 = unidadesTotalCalculate(jQuery('#doenteagudo-standard-plasma-unidades'), jQuery('#doenteagudo-standard-plasma-range'), '#doenteagudo-standard-plasma-total');
        var value3 = unidadesTotalCalculate(jQuery('#doenteagudo-standard-plasmaferese-unidades'), jQuery('#doenteagudo-standard-plasmaferese-range'), '#doenteagudo-standard-plasmaferese-total');
//console.log(value1);
//console.log(value2);
//console.log(value3);
        var valueTotal = value1 + value2 + value3;

        jQuery('#demo').text(valueTotal + '€');


    }


    </script>
</body>
</html>

答案 1 :(得分:-1)

你应该使用jQuery的val()方法来获取字段的值。

由于