热呛 2016-05-20 08:29 采纳率: 100%
浏览 1141
已采纳

jquery问题,大神快出来啊,在线急等

图片说明

想要把最后的一行那个操作弄到前面去 在表头的第二个

js

  var sFood1 = $('#food1'), sFood2 = $('#food2'), sAge = $('#age'), sSex = $('#sex')
         //去掉第一个名列和最后一个操作列
        , tdSums = $('#trSum td:gt(0)').not(':last')
        , tdAges = $('#trAge td:gt(0)').not(':last')
        , tdDiffs = $('#trDiff td:gt(0)').not(':last')

        , tbFood = $('#tbFood ')
    //初始化食品一级分类及事件
    for (attr in food) sFood1.append('<option value="' + attr + '">' + attr + '</option>');
    sFood1.change(function () {
        var arr = food[this.value];
        sFood2.html('');
        for (attr in arr) sFood2.append('<option value="' + attr + '">' + attr + '</option>');
    }).trigger('change');//触发一级分类加载2级分类
    //初始化年龄段
    for (attr in age) sAge.append('<option value="' + attr + '">' + attr + '</option>');
    sAge.add('#sex').change(function () {
        var arr = sAge.val() == '请选择' ? age['请选择'] : age[sAge.val()][sSex.val()];

        tdAges.each(function (index) { this.innerHTML = arr[index]; });

        updateSumDiff();
    });//触发onchange更新trAge中的td数值

    function updateSumDiff() {//更新合计和差距
        var sum = [];//每营养小计
        tbFood.find('tr').each(function () {
            $('td:gt(0)', this).not(':last').each(function (index) {
                sum[index] = ( parseInt(this.innerHTML) || 0) + parseFloat(sum[index] || 0);
            });
        });

         tdAges.each(function (index) {
        var v = ((parseInt(this.innerHTML) || 0) + parseFloat(sum[index] || 0));
        tdSums.eq(index).html(v);
        v = (parseInt(this.innerHTML) || 0) - parseFloat(sum[index] || 0);
        tdDiffs.eq(index).html(v).css('color', v < 0 ? 'red' : 'black');
    });



    }

    function addFood() {
        var arr = food[sFood1.val()][sFood2.val()];
        var s = '<tr><td>' + sFood2.val() + '</td>';
        for (var i = 0; i < arr.length; i++) s += '<td>' + arr[i] + '</td>';
        s += '<td><input type="button" value="删除" onclick="removeFood(this)"/></td></tr>';
        tbFood.append(s);
        updateSumDiff();
          $('#div_Test3 tr').each(function() {
        $(this).children("td:first").attr("style","color:yellow;")
    });                 


    }
    function removeFood(o) { 

    $(o).closest('tr').remove(); 

    updateSumDiff(); 
    }

不明白 看这个网页食物计算

  • 写回答

5条回答 默认 最新

  • Go 旅城通票 2016-05-23 07:46
    关注
      function addFood() {
            var arr = food[sFood1.val()][sFood2.val()];
            var s = '<tr><td>' + sFood2.val() + '</td><td><input type="button" value="删除" onclick="removeFood(this)"/></td>';/////////////////
            for (var i = 0; i < arr.length; i++) s += '<td>' + arr[i] + '</td>';
            s += '</tr>';
            tbFood.append(s);
            updateSumDiff();
              $('#div_Test3 tr').each(function() {
            $(this).children("td:first").attr("style","color:yellow;")
        });                 
    
    
        }
    

    addFood也要改

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥15 stable diffusion
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算