Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.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
在jQuery中添加多个文本框计算值_Jquery - Fatal编程技术网

在jQuery中添加多个文本框计算值

在jQuery中添加多个文本框计算值,jquery,Jquery,我有文本框,输入时在同一文本框上计算。我想要的是将它们全部添加到最终结果中。我试过使用我的旧函数。下面是它的外观: function compute(){ var quiz = document.getElementById('quiz').value; var recitation = document.getElemenById('recitation').value; var homework = document.getElementById('homework').va

我有文本框,输入时在同一文本框上计算。我想要的是将它们全部添加到最终结果中。我试过使用我的旧函数。下面是它的外观:

function compute(){
  var quiz = document.getElementById('quiz').value; 
  var recitation = document.getElemenById('recitation').value; 
  var homework = document.getElementById('homework').value; 
  var seatwork = document.getElementById('seatwork').value; 
  var activities = document.getElementById('activities').value; 
  var exams = document.getElementById('exams').value; 
  var project = document.getElementById('project').value; 
  var total = document.getElementById('total').value; 
  var grade = quiz+recitation+homework+seatwork+activities+exams+project; 
  total.value = grade;
}
我在每个文本框上都添加了oninput=“compute()”。但它不是相互作用的。我可能犯了什么错?可能是函数在某一点发生冲突吗

编辑:我已经创建了一个测试页面。基本相同。给你:

<!DOCTYPE html>
<head>
<script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
        <title>Test</title>
</head>

<body>
<input id="first" type="text" onchange="compute()">

<script>
$('#first').on('change', function() {
    $(this).val($(this).val() * 3);
});
</script>

<input id="second" type="text" onchange="compute()">

<script>
$('#second').on('change', function() {
    $(this).val($(this).val() * 3);
});
</script>


<input id="result" type="text" readonly>

<script>
        function compute(){
                var myBox1 = document.getElementById('first').value;
                var myBox2 = document.getElementById('second').value;
                var result = document.getElemetById('result').value;
                var grade = first + second;
                total.value = grade;
        }
</script>

</body>
</html>   

试验
$('#first')。在('change',function()上{
$(this.val($(this.val()*3);
});
$('#second')。on('change',function(){
$(this.val($(this.val()*3);
});
函数compute(){
var myBox1=document.getElementById('first')。值;
var myBox2=document.getElementById('second')。值;
var result=document.getElemetById('result')。值;
var等级=第一级+第二级;
总价值=等级;
}
你试过了吗


编辑:您可能还必须更改
total.value=grade至<代码>总计=等级或类似的东西。我相信这个函数可以写得简单一点,但我不知道您的完整代码。

我明白了。您能按原样发布HTML和jQuery代码吗?谢谢您发布代码。在上面,更改
total.value=等级
$(“#结果”).val(等级)谢谢回复人。非常感谢。但它仍然不起作用。也许我错过了什么。再次感谢。我没有时间给你答案,但是尽量避免从html调用事件。混合使用html和JavaScript被认为是一种糟糕的做法。为此使用事件侦听器。
onChange="compute();"