首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

JavaScript 二級聯動與營養表格計算:修復動態下拉框數據綁定錯誤

     編輯:程式設計疑難解答

原代碼問題

  • 性別下拉框未綁定 change 事件
  • 數據結構 age['1-7歲'] 下嵌套 {男:[...], 女:[...]},取值邏輯錯誤
  • toFixed(2) 未正確應用於計算結果

修正核心邏輯

// 綁定年齡和性別雙重 change
$('#age, #sex').on('change', function() {
    const ageVal = $('#age').val();
    const sexVal = $('#sex').val();
    const arr = (ageVal === '請選擇') ? age['請選擇'] : age[ageVal][sexVal];
    // 填充人體正常值行
    $('#trAge td:gt(0):not(:last)').each(function(i) {
        this.textContent = arr[i] ?? 0;
    });
    updateSumDiff();
}).first().trigger('change');

保留兩位小數

tdDiffs.eq(i).text((parseFloat(tdAges.eq(i).text()) - sum[i]).toFixed(2));

完整可運行代碼

見最佳回答中的完整 HTML/JS,已修復所有綁定與計算邏輯。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved