在表单中的onChange之后添加2个数字 - Javascript

时间:2014-02-10 13:58:54

标签: javascript onchange

我想做一些非常简单的事情!!

我有一张表格...我想输入2个号码,并且有一个用我输入的两个数字之和进行更新的方框。

不幸的是 - 我正在使用的代码似乎将值视为文本而只是将它们放在一起...所以5 + 1变为51 ......

以下是代码:

`     

function av(avSelect)
{
var one=avSelect.form.one.value;
var two=avSelect.form.two.value;
var avvy=one+two;
avSelect.form.avvy.value=avvy;
}
</script>

<form name="5">
<br>
Adding<input type="number" id="avvy" value="">
Put a number in:<input type="number" id="one" OnChange="av(this)">
Put a number in:<input type="number" id="two" OnChange="av(this)">
</form>`

4 个答案:

答案 0 :(得分:0)

尝试

var one = parseFloat(avSelect.form.one.value);
var two = parseFloat(avSelect.form.two.value);

答案 1 :(得分:0)

    var one  = parseInt(avSelect.form.one.value);
    var two  = parseInt(avSelect.form.two.value);
    var avvy = one+two;
    avSelect.form.avvy.value=avvy;

答案 2 :(得分:0)

我已经为您提供了解决方案: http://jsfiddle.net/c2dJt/ 对于Jquery:

$(document).ready(function(){
    $(document).on('change', '.change', function(){
        var number = parseFloat($('#one').val()) + parseFloat($('#two').val());
        $('#avvy').val(number);
    });
});

来自HTML:

<form name="5">
Adding<input type="number" id="avvy" value="">
Put a number in:<input type="number" id="one" class="change">
Put a number in:<input type="number" id="two" class="change">
</form>

答案 3 :(得分:0)

它是作为字符串添加的,而不是作为整数添加的。 parseInt() 函数解析一个字符串并返回一个整数。这应该可以解决问题

<script type="text/javascript">
        function av(avSelect) {
            var one=avSelect.form.one.value;
            var two=avSelect.form.two.value;
            var avvy=parseInt(one)+parseInt(two);
            avSelect.form.avvy.value=avvy;
        }
</script>