首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

范例讲解JS计算表格每行的和与总和代码

2012-10-08 
实例讲解JS计算表格每行的和与总和代码!DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN

实例讲解JS计算表格每行的和与总和代码

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>IT知道网_ww.itwis.com--javascript计算每行的和与总和(QTY,PRICE,TOTAL,合计)</title>
</head>

<body>
<table width="760" border="0" cellspacing="1" cellpadding="0" id="tlist"> 
    <tr name="fno" size=12 maxlength=12> </td> 
    <td><input type="text" name="fdesc" size=32> </td> 
    <td><input type="text" name="fqty" size=7 maxlength=7 value='0' onchange='chtotal(this);'> </td> 
    <td><input type="text" name="fprice" size=6 maxlength=6 value='0' onchange='chtotal(this);'> </td> 
    <td><input type="text" name="finners" size=4 maxlength=4> </td> 
    <td><input type="text" name="fouters" size=4 maxlength=4> </td>    
    <td><input type="text" name="ftotal" size=8 readonly value='0'> </td> 
    <td><input type="text" name="fremarks" size=20 maxlength=100> </td> 
    <td><input type="button" value="删除" name='del' onclick="delrecord(this);"> </td> 
    </tr> 
    <tr value="增加条目" onclick="AddRecord();"> </td> 
    </tr> 
    </table>

<script>  
function AddRecord()  
{  
  var  row  =  tlist.insertRow(tlist.rows.length-2); 
  row.className='tit3'; 
  var  i  =  row.rowIndex;  
  var  col  =  row.insertCell(0);    
  col.innerHTML  =  " <input type='text' name='fno' size=12 maxlength=12>";    
  col  =  row.insertCell(1);    
  col.innerHTML  =  " <input type='text' name='fdesc' size=32 maxlength=100>";    
  col  =  row.insertCell(2);    
  col.innerHTML  =  " <input type='text' name='fqty' size=7 maxlength=7 value='0' onchange='chtotal(this);'>";    
  col  =  row.insertCell(3);    
  col.innerHTML  =  " <input type='text' name='fprice' size=6 maxlength=6 value='0' onchange='chtotal(this);'>";    
  col  =  row.insertCell(4);    
  col.innerHTML  =  " <input type='text' name='finners' size=4 maxlength=4>";    
  col  =  row.insertCell(5);    
  col.innerHTML  =  " <input type='text' name='fouters' size=4 maxlength=4>";    
  col  =  row.insertCell(6);    
  col.innerHTML  =  " <input type='text' name='ftotal' size=8 readonly value='0'>";    
  col  =  row.insertCell(7);    
  col.innerHTML  =  " <input type='text' name='fremarks' size=20 maxlength=100>"; 
  col  =  row.insertCell(8);    
  col.innerHTML  =  " <input type='button' value='删除' name='del' onclick='delrecord(this);'>";  


function chtotal(e) 
{

var obj=e.parentNode.parentNode; 
var id=parseInt(obj.rowIndex)-1;
var fqty=document.getElementsByName("fqty")[id]; 
var fprice=document.getElementsByName("fprice")[id]; 
var ftotal=document.getElementsByName("ftotal")[id]; 
var delbutton=document.getElementsByName("del"); 
var znum= document.getElementById("znum"); 
var newzum=0; 
ftotal.value = fqty.value * fprice.value; 
for(var j=0;j <delbutton.length;j++) 

  newzum+=parseFloat(document.getElementsByName("ftotal")[j].value); 

znum.innerHTML =newzum;

}

function delrecord(obj) 

  obj.parentNode.parentNode.parentNode.removeChild(obj.parentNode.parentNode); 
  var delbutton=document.getElementsByName("del"); 
  var newzum=0; 
  for(var j=0;j <delbutton.length;j++) 
  { 
  newzum+=parseFloat(document.getElementsByName("ftotal")[j].value); 
  } 
  znum.innerHTML =newzum; 

</script>
</body>
</html>

热点排行