网页动态表格中数字的计算

*************************************************************************************************************************************************************************************
                                   
                        网页动态表格中数字的计算

**************************************************************************************************************************************************************************************

以下是相关代码,把下面文件放在同一目录下运行即可:

//文件 countNum.html 代码如下

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
  5. <title>无标题文档</title>
  6. </head>
  7. <SCRIPT LANGUAGE="javascript" SRC="addDelTable.js"></SCRIPT>
  8. <SCRIPT>
  9. allCount=1;
  10. countA=1;
  11. countB=1;
  12. countC=1;
  13. countD=1;
  14. </SCRIPT> 
  15. <body>
  16. <form method=post name=ecform> 
  17. <table width="65%" border="0" align="center" cellpadding="0" cellspacing="1" class="form_table">
  18.    <TR>
  19.     <TH width="17%"> 成绩表</TH>
  20.     <TH width="26%" class="form_label">姓名</TH>
  21.     <TH width="26%" class="form_label">数学</TH>
  22.     <TH width="26%">英语</TH>
  23.     <TH width="5%"></TH>
  24.    </TR>
  25.    <tr>
  26.     <td colspan="5"><table border="0"  cellpadding="0" cellspacing="0" width="100%" align="center" class="form_table" id="commandTable"> 
  27.      <tr id=cT>
  28.        <TD class="form_label" width="17%"><strong> </strong></TD>
  29.        <TD class=form_content width="26%"><input type="text" id="cMa" class="longfield" name="loginName" /> </TD>
  30.        <TD class=form_content width="26%"><input type="text" id="cMb" class="longfield" name="loginName"/> </TD>
  31.        <TD class=form_content width="26%"><input type="text"id="cMc"  class="longfield" name="loginName"/></TD>
  32.        <td class="form_label" width="5%"><input type="button" value="+" alt="add"  onClick="newHospitalVisit('commandTable')"></td>
  33.      </tr>
  34.     </table></td>    
  35.    </tr> 
  36.    <tr>
  37.        <TD  class=form_content colspan="2"><input type="button" value="       合   计     "  onClick="count('commandTable')"/></TD>
  38.        <TD  class=form_content><input type="text" id=tMb class="longfield" name="loginName" /> </TD>
  39.        <TD class=form_content><input type="text" id=tMc class="longfield" name="loginName" /></TD>
  40.        <td class="form_label"></td> 
  41.    </tr> 
  42. </table>
  43. </form>
  44. </body>
  45. </html>

//文件 addDelTable.js 代码如下

  1. var modified=0 
  2. var currentLine=-1 
  3. var line=-1 
  4. function delIt(tableID) {
  5.  var PLList=document.getElementById(tableID);
  6.  line=parseInt(event.srcElement.ln,10)
  7.   if (line>0){ 
  8.    for (i=1;i<PLList.rows.length;i++){ 
  9.      if (cT[i].ln==line){ 
  10.         PLList.deleteRow(i) 
  11.      }
  12.    }
  13.   }
  14. function newHospitalVisit(tableID) 
  15. var PLList=document.getElementById(tableID);
  16. newRow=PLList.insertRow(PLList.rows.length);
  17. var medicationA="";
  18. var medicationB="";
  19. var medicationC="";
  20.  newRow.id="cT";
  21.  medicationA="cMa";
  22.  medicationB="cMb";
  23.  medicationC="cMc";
  24.  allCount=countA;
  25.  countA++;
  26. //alert(newRow.id);
  27. //newRow.id="tdt"; 
  28. newRow.ln=allCount; 
  29. newRow.bgColor=""
  30. newRow.className="form_content"
  31. //newRow.οnclick=lightOn; 
  32. c1=newRow.insertCell(0); 
  33. c1.ln=allCount; 
  34. c1.className="form_label"
  35. //c1.οnclick=delIt(); 
  36. //c1.οnmοuseοver=mouseOver; 
  37. //c1.οnmοuseοut=mouseOut; 
  38. c1.innerHTML=""
  39. c2=newRow.insertCell(1); 
  40. c2.ln=allCount; 
  41. c2.className="form_content"
  42. c2.innerHTML="<input type=text class=longfield  id="+medicationA+" ln="+allCount+" class=tableData οnkeyup='modifiedIt()'>" ;
  43. c3=newRow.insertCell(2); 
  44. c3.ln=allCount;
  45. c3.className="form_content"
  46. c3.innerHTML="<input type=text class=longfield id="+medicationB+" ln="+allCount+" class=tableData οnkeyup='modifiedIt()'>" ;
  47. c4=newRow.insertCell(3); 
  48. c4.ln=allCount; 
  49. c4.className="form_content"
  50. c4.innerHTML="<input type=text class=longfield  id="+medicationC+" ln="+allCount+" class=tableData οnkeyup='modifiedIt()'>"
  51. c5=newRow.insertCell(4); 
  52. c5.ln=allCount; 
  53. c5.className="form_label"
  54. c5.id="delItem"
  55. c5.innerHTML="<input type=button value=- alt=add width=18 height=10 ln="+allCount+" onClick=delIt('"+tableID+"')>" ;
  56. allCount++ 
  57. }
  58. function mouseOver() 
  59. event.srcElement.className="delMouseOver" 
  60. function mouseOut() 
  61. event.srcElement.className="scheduleButtonVisible" 
  62. }
  63. function count(tableID) 
  64.   var PLList=document.getElementById(tableID);
  65.   var sb=0.0;
  66.   var sc=0.0;
  67.   var strb="";
  68.   var strc="";
  69.   for (i=0;i<PLList.rows.length;i++){
  70.      if(PLList.rows.length==1){
  71.         strb=document.ecform.cMb.value;
  72.         strc=document.ecform.cMc.value;
  73.      }else{
  74.         strb=document.ecform.cMb[i].value;
  75.         strc=document.ecform.cMc[i].value;
  76.      }
  77.      if(strb=='')strb='0';
  78.      if(strc=='')strc='0';
  79.      if((/d+/).test(strb)){
  80.         confirm("成绩必须为数字");
  81.         return
  82.      }else{
  83.       sb=sb+parseFloat(strb);
  84.       sc=sc+parseFloat(strc);
  85.      }
  86.   } 
  87.   document.ecform.tMb.value=sb;
  88.   document.ecform.tMc.value=sc;
  89. }

 

 

如发现有问题请与本人联系:
  MSN:
hiyu2218@hotmail.com
  QQ:147204701
  Email:
hiyu2218@yahoo.com.cn

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值