从输入和打印结果中划分数字

时间:2014-11-01 12:08:42

标签: javascript jquery html input

所以我有两个数字要用于计算。 我正在使用以下HTML

<label>Personen</label>
<input type="number" id="personen" /><br />
<label>Kilometer</label>
<input type="number" id="kilometer" /><br />
<label>Output</label>
<input type="text" id="output" readonly /><br />

以及以下jQuery

var $neu = $("#output");
var $kilometer, $personen;
var $neu = $kilometer/$personen;
$("#kilometer").keyup(function() {
    var kilometer = parseFloat($(this).val());
    $kilometer.val(kilometer);
})
$("#personen").keyup(function() {
    var personen = parseFloat($(this).val());
    $personen.val(personen);
})

但不幸的是,我无法将两个数字从输入中分开。我错过了什么?

还有一个小提琴:http://jsfiddle.net/g9fUf/57/

2 个答案:

答案 0 :(得分:2)

我认为这就是你想要的:

http://jsfiddle.net/g9fUf/59/

$("#kilometer").keyup(function() {
    var kilometer = parseFloat($("#kilometer").val());
    var personen = parseFloat($("#personen").val());
     $("#output").val(kilometer/personen);
});
$("#personen").keyup(function() {
    var kilometer = parseFloat($("#kilometer").val());
    var personen = parseFloat($("#personen").val());
    $("#output").val(kilometer/personen);
});

您可以优化此解决方案,仅在定义kilometerpersonen并显示浮点数时才显示结果。您也可以将这两个函数分组到一个JQuery选择器中。

答案 1 :(得分:0)

$kilometer$personen是变量名,而不是jQuery对象使用assign运算符来设置值

$kilometer=kilometer;

即使允许,我也建议从变量名中删除美元符号。在更复杂的函数中,更难区分变量名和jQuery函数。