You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于HTML/JS(jQuery)的齿轮计算器重复脚本无输出问题求助

问题排查与修复方案

可能的问题点

  1. 选择器不匹配
    检查HTML中是否存在类名为module的输入框,以及ID为resultAot、resultDP的结果输入框,确认类名/ID拼写完全一致(注意大小写、特殊字符)。

  2. NaN导致计算失效
    当输入框为空或输入非数字内容时,parseInt()会返回NaN,任何包含NaN的运算结果都是NaN,无法正常赋值到结果框。

  3. 重复事件绑定冲突
    三个独立的$(document).ready都绑定了所有文本输入框的keyup事件,触发时可能互相干扰,导致逻辑执行异常。

修复后的代码

$(document).ready(function(){
    $('input[type="text"]').keyup(function () {
        // 计算模数
        var valZ = parseInt($('.jumlahGigi').val()) || 0;
        var valD = parseInt($('.diameterPitch').val()) || 0;
        if(valZ > 0 && valD > 0){
            $("#resultModule").val(valD / valZ);
        } else {
            $("#resultModule").val('');
        }

        // 计算齿数
        var valM = parseInt($('.module').val()) || 0;
        if(valM > 0 && valD > 0){
            $("#resultAot").val(valD / valM);
        } else {
            $("#resultAot").val('');
        }

        // 计算节圆直径
        if(valM > 0 && valZ > 0){
            $("#resultDP").val(valZ * valM);
        } else {
            $("#resultDP").val('');
        }
    });
});

修复说明

  • 用|| 0处理parseInt返回NaN的情况,确保运算时不会出现无效值。
  • 添加条件判断,仅当两个计算参数都有效(大于0)时才执行计算,否则清空结果框,避免显示无效值。
  • 将所有计算逻辑合并到一个keyup事件处理函数中,消除重复绑定的冲突问题。

内容的提问来源于stack exchange,提问作者Dam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 15:01:19