js实现动态级联计分,级数无限制

1           35
1.1        10
1.2        10
1.3        10
1.3.1      5
1.3.2      5
1.4         5
2           30   
2.1        10
2.2        20

合计:    65

----------------------------------------------------

   //初始化父级自评分
   function SetFatherNum()
   {
    var objTable=document.getElementById("dgrdList");
    //将父级的自评分置0分
    for(var i=objTable.rows.length-2;i>0;i--)
    {
     var strItemNum1 = objTable.rows[i].cells[1].innerText;
     var arrayItemNum = strItemNum1.split(".");
     var arrayCount = arrayItemNum.length;
     if(arrayCount>1)
     {
      var ItemNum = "";
      for(var n=0;n<=arrayCount-2;n++)
      {
       ItemNum += "." + arrayItemNum[n];
      }
      
      ItemNum = ItemNum.substring(1,ItemNum.length);
      
      for(var j=objTable.rows.length-2;j>0;j--)
      {
       var idSum1 = parseFloat(j)+parseFloat(1);
       var zpTextId1 = "dgrdList__ctl" + idSum1 +"_SelfAppraiseNum";
       
       var strItemNum2 = objTable.rows[j].cells[1].innerText;
       if(strItemNum2 == ItemNum)
       {
        document.getElementById(zpTextId1).value = 0;
       }
      }
     }
    }
   }
   //级联计分
   function FelatingSum()
   {
    var objTable=document.getElementById("dgrdList");
    //将父级的自评分置0分
    SetFatherNum();
    
    //根据子级自评分,计算父级自评分
    for(var i=objTable.rows.length-2;i>0;i--)
    {
     var strItemNum1 = objTable.rows[i].cells[1].innerText;
     var arrayItemNum = strItemNum1.split(".");
     var arrayCount = arrayItemNum.length;
     if(arrayCount>1)
     {
      var ItemNum = "";
      for(var n=0;n<=arrayCount-2;n++)
      {
       ItemNum += "." + arrayItemNum[n];
      }
      
      ItemNum = ItemNum.substring(1,ItemNum.length);
      
      for(var j=objTable.rows.length-2;j>0;j--)
      {
       var idSum1 = parseFloat(j)+parseFloat(1);
       var idSum2 = parseFloat(i)+parseFloat(1);
       var zpTextId1 = "dgrdList__ctl" + idSum1 +"_SelfAppraiseNum";
       var zpTextId2 = "dgrdList__ctl" + idSum2 +"_SelfAppraiseNum";
       
       var strItemNum2 = objTable.rows[j].cells[1].innerText;
       if(strItemNum2 == ItemNum)
       {
        document.getElementById(zpTextId1).value = parseFloat(document.getElementById(zpTextId1).value) + parseFloat(document.getElementById(zpTextId2).value);
       }
      }
     }
    }
    //统计总分
    StatSum();
   }
   //统计总分
   function StatSum()
   {
    var objTable=document.getElementById("dgrdList");
    var CountSum = 0;
    var StandardSum = 0;
    //根据子级自评分,计算父级自评分
    for(var i=objTable.rows.length-2;i>0;i--)
    {
     var strItemNum1 = objTable.rows[i].cells[1].innerText;
     var arrayItemNum = strItemNum1.split(".");
     var arrayCount = arrayItemNum.length;
     var idSum1 = parseFloat(i)+parseFloat(1);
     var zpTextId1 = "dgrdList__ctl" + idSum1 +"_SelfAppraiseNum";
     if(arrayCount==1)
     {
      CountSum = parseFloat(CountSum) + parseFloat(document.getElementById(zpTextId1).value);
      StandardSum = parseFloat(StandardSum) + parseFloat(objTable.rows[i].cells[4].innerText);
     }
    }
    objTable.rows[objTable.rows.length-1].cells[6].innerText = CountSum;
    objTable.rows[objTable.rows.length-1].cells[4].innerText = StandardSum;
   }

转载于:https://www.cnblogs.com/jenner-lin/archive/2008/09/28/1301157.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值