javascript - 在一个html页面中使用javascript计算2组输入类型

标签 javascript html function

我有两组输入类型的文本框。每个 2 个字段。我正在尝试在单页中单独计算和比较每组。 输入类型有不同的 id。

<input type="text" id="tmcp_textfield_1" name="blueberry" 
placeholder="blueberry" value="0" onkeydown="calculate()" 
onkeyup="calculate()">
<input type="text" id="tmcp_textfield_2" name="plums" placeholder="plums" value="0" 
onkeydown="calculate()" onkeyup="calculate()">
<input type="text" id="a3" name="a3" placeholder="a3" value="0">

<br>second set below<br>
<input type="text" id="tmcp_textfield_3" name="blueberry" 
placeholder="blueberry" value="0" onkeydown="calculate()" 
onkeyup="calculate()">
<input type="text" id="tmcp_textfield_4" name="plums" placeholder="plums" value="0" 
onkeydown="calculate()" onkeyup="calculate()">
<input type="text" id="a3`" name="a3" placeholder="a3" value="0">

我的标题中的 JavaScript: 对于第一组:

<script type="text/javascript">
    calculate = function() {
        var blueb = parseFloat($('#tmcp_textfield_1').val());//document.getElementById('blueberry').value;
        var plumsb = parseFloat($('#tmcp_textfield_2').val());//document.getElementById('plums').value; 
        var thetotal = /*document.getElementById('a3').value =*/ parseInt(blueb)+parseInt(plumsb);
        if (thetotal > 6) {
            $('#tmcp_textfield_2').val('');
            $('#tmcp_textfield_1').val('');
            alert('Combination must be below 6');
        }
    }
</script>

第二组:

<script type="text/javascript">
    calculate = function() {
        var blueb = parseFloat($('#tmcp_textfield_3').val());//document.getElementById('blueberry').value;
        var plumsb = parseFloat($('#tmcp_textfield_4').val());//document.getElementById('plums').value; 
        var thetotal = /*document.getElementById('a3').value =*/ parseInt(blueb)+parseInt(plumsb);

        if (thetotal > 12){
            $('#tmcp_textfield_4').val('');
            $('#tmcp_textfield_3').val('');
            alert('Combination must be below 12');
        }
    }
</script>

本题仅进行第一组计算工作。当我删除第一组 JavaScript 时,第二组只能工作,反之亦然。 我如何区分 javascript 中的集合,以便这两个输入集合在一个 html 页面中一起工作。

最佳答案

问题: 两个集合都有相同名称的函数“calculate()”,这就是为什么一次只有 1 个函数在工作。

解决方案: 将函数名称重命名为不同的名称,例如 calculateOne()calculateTwo(),然后两者都可以工作。

希望这有帮助

关于javascript - 在一个html页面中使用javascript计算2组输入类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49995263/

相关文章:

javascript - 手动引导/初始化时访问 Angular 服务

html - 使按钮在背景图像上居中

function - 函数的参数太多

c++ - 在静态函数中调用成员函数指针

javascript - 使用 javascript 对象文字表示法定义函数

javascript - 移动时更新fabricjs对象坐标

javascript - Node.js 正在捉弄我。使用数组生成随机名称和推文

javascript - 如何设置只读 <s :textarea/> fit to its content

javascript - 从ajax驱动的网站检索渲染的html

html - 如果一个部分存在而不迭代, mustache 有没有办法渲染一个 block ?